我的Web无法识别数组参数。我在前端有一个数组,就像这个[1, 2, 3, 4, 5]。现在,我想将它从JSON主体(而不是URL)传递给Web,如下所示:
后端代码:
// POST /api/result
[HttpPost]
public IHttpActionResult GetResult([FromBody]int[] ids)
{
//do something
}前端代码(JQuery):
var array = new Array("1", "2", "3", "4", "5");
var ids = Json.stringify(array);
$.ajax({
type: "POST",
url: "/api/result",
data: ids,
success: function (data, state) {
alert("success!");
},
dataType: "json"
})但是api得到的是"[]“而不是"1”、"2“、"3”、"4“、"5”。
如何解决这个问题?
发布于 2018-04-06 05:55:20
只需再添加一个属性tu $.ajax函数即可。
$.ajax({
type: "POST",
contentType: 'application/json; charset=utf-8',
/*rest configuration*/
}然后服务器端将能够理解如何解析字符串化的内容。
这个问题背后的一些理论:https://blog.codenamed.nl/2015/05/12/why-your-frombody-parameter-is-always-null/
https://stackoverflow.com/questions/49686080
复制相似问题