【发布时间】:2017-05-17 08:56:36
【问题描述】:
这是 Google API - Javascript 代码
var output = new Object();
output.PlaceID = place.place_id;
output.Longitude = place.geometry.location.lng();
output.Latitude = place.geometry.location.lat();
$.ajax({
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
url: 'api/StorePlaces/Get',
type: 'POST',
data: { "value":output },
success: function (result) {
// Do something with the result
}
});
如何在控制器处接收
// GET api/values/5
[HttpPost("{PlaceDetails}")]
public string Get(PlaceDetails value)
{
return "value";
}
在这种情况下,我得到空值
我无法发送字符串,如果我可以这样发送对象,那就更好了。
这可以作为接收对象
public class PlaceDetails
{
public string PlaceID { get; set; }
public string Longitude { get; set; }
public string Latitude { get; set; }
}
【问题讨论】:
-
将 ajax 中的请求类型更改为“POST”并更改您的方法以接受 POST 并将参数类型更改为“PlaceDetails”
-
@Dalton 我得到空值,该怎么办
-
修改数据:放入
data:output并删除[FromBody] -
@ARUNEdathadan:另外,请不要使用自最初问题以来您尝试过的东西来编辑问题,因为它可能会完全改变问题的含义
标签: json ajax string asp.net-web-api asp.net-core