使用 Jquery AJAX 从 ASP.NET Web 服务器获取对象

Posted

技术标签:

【中文标题】使用 Jquery AJAX 从 ASP.NET Web 服务器获取对象【英文标题】:Using Jquery AJAX to get object from ASP.NET web server 【发布时间】:2012-09-01 14:08:00 【问题描述】:

我正在尝试使用 Jquery Ajax 发布方法调用 asp.net Web 服务,例如:

$.ajax(
    type: "POST",
    url: this._baseURL + method,
    data: data,
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: fnSuccess,
    error: fnError
);

在服务器端,我有一个看起来像的 web 方法

public myClass myWebMethod(Guid Id)  ... 

问题是我得到一个错误的回报,说“500 内部服务器错误”和

Web 服务调用无效,缺少参数值:\u0027Id\u0027。

我已经尝试过这个数据:

'"Id":"thisistheid"'' Id:thisistheid'

...以及我在示例中找到的许多其他组合。

请问有谁知道如何处理这个问题?

【问题讨论】:

您可以启动 Fiddler 并查看您的 Jquery 正在传递什么 HTTP 请求。对我来说,这通常会带来解决方案。 【参考方案1】:

试试看

data : Id :"thisistheid"

对象周围没有引号

【讨论】:

【参考方案2】:

感谢 Fabrizio,这是答案的一部分!我终于想通了:

data = Id :"thisistheid";
...
$.ajax(
...
    data: JSON.stringify(data),
...
);

像魅力一样工作。

【讨论】:

以上是关于使用 Jquery AJAX 从 ASP.NET Web 服务器获取对象的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 jQuery Ajax 调用从 ASP.NET Web Api 下载 CSV 文件

使用 Jquery AJAX 从 ASP.NET Web 服务器获取对象

使用 jquery ajax 从 asp.net 网页表单页面调用 web api url

将数据传递到处理程序的 Jquery ajax 不起作用(Asp.net、C#、Jquery)

如何使用 jQuery AJAX 调用 ASP.Net 字符串函数?

c# asp.net jQuery AJAX 从 MySQL 获取数据