2017-03-21 15 views
0

文字列をWebApiに送信する必要があります。次のコードを試しましたが、予想される出力が得られませんでした。 JavaScriptでajaxを使用して文字列の配列をWebAPIに送信

$.ajax({ 
    url:serviceUrl+'/sample', 
    type:'POST', 
    data:['a','b','c'], 
    contentType:'application/json', 
    dataType:'JSON' 
}).done(function(data){ 
    console.log(data); 
}).fail(function(data){ 
    console.log(data); 
}); 

コントローラーで:ノー要素でdataFromUIを得ているWebAPIのでは

[Route("sample")] 
[HttpPost] 
[ResponseType(typeof(string))] 
public IHttpActionResult GetSample(List<string> dataFromUI) 
{ 
    return Ok("Success"); 
} 

。 私はJSON.stringifyでデータを送信しようとしましたが、今回はdataFromUIをnullにしました。

私は答えが得られたらうれしいです。

ありがとうございました。

答えて

0

あなたは、あなたの行動のためのルート「サンプル」を設定し、サンプルアクション

$.ajax({ 
    url:serviceUrl+'/sample' (or your action route), 
    type:'POST', 
    data:['a','b','c'], 
    contentType:'application/json', 
    dataType:'JSON' 
}).done(function(data){ 
    console.log(data); 
}).fail(function(data){ 
    console.log(data); 
}); 
+0

私は試みました。 –

0

を呼び出そうあなたが一致するプロパティとして送信したい配列を含むオブジェクトにあなたの配列を変換する必要があります以下のようにあなたの行動のPARAMTERの名前:

JSON.stringify({ dataFromUI: ['a','b','c'] }) 

完全なコードは次のようになります。それはdidnの

$.ajax({ 
    url:serviceUrl+'/sample', 
    type:'POST', 
    data: JSON.stringify({ dataFromUI: ['a','b','c'] }), 
    contentType:'application/json', 
    dataType:'JSON' 
}).done(function(data){ 
    console.log(data); 
}).fail(function(data){ 
    console.log(data); 
}); 
+0

dataFromUIをnullにする –

+0

あなたのコントローラはnull値としてdataFromUiを受信して​​いますか? – Remi

+0

ええ、私はnull値としてdataFromUiを受け取ります –

関連する問題