当然这已经处理了很多次了......但是......只是看不出我做错了什么!
这是一个简单的 JS 脚本,可以将数据发送回 ApiController。
function WebCall(url,parameterObject, callBackFunction) {
this.callbackfunction = callBackFunction;
this.parameterObject = parameterObject;
this.url = url;
self = this;
this.GetData = function () {
//self = this;
$.ajax({
//dataType: "json",
type: "POST",
url: self.url,
data: JSON.stringify(self.parameterObject),
contentType: "application/json;charset=utf-8",
success: function (data) {
self.callbackfunction.call(this, data);
},//self.GotData,
error: function (xhRequest, ErrorText, thrownError)
{
alert("error : " + ErrorText)
},
complete: function () {},
})
}
}
发送的数据(parameterObject)很简单
var postData = {
clientId: id
}
控制器中的 c# 代码是:
public class ClientPostObject
{
public string clientId;
}
public class ClientDetailController : ApiController
{
[HttpPost]
public ClientDetailWidgetData GetClient(ClientPostObject clientObject)
{
return new ClientModel().GetClientDetail(clientObject.clientId);
}
}
在 Google chrome 开发人员工具中,XHR 将“表单数据”显示为 clientId:A0001 - 这样看起来还可以吗?
无论我尝试什么(并且我在网络上经历了很多建议),帖子数据都不存在。
当然它的东西很简单....在此先感谢。