看起来这应该很简单,但我无法调用我的 Web 服务调用。这是我的代码:
var data = '{"deviceId":"e9b3f993-7ca1-442b-a5c2-001ab86e1af4","opid":202,"remarks":"fefawef"}';
$.ajax({
url: 'MyPage.aspx/MyMethod',
data: data,
type: 'GET',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(response) {
// Do stuff
},
error: function(xhr) {
alert(xhr.responseText);
}
}); // end $.ajax
乍一看,您可能会问使用 POST 代替 GET 是否更合适。可能会,但我使用 GET 来避免讨厌的 Internet Explorer 12030 错误问题。
我的 Web 方法的签名如下所示:
[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public static string MyMethod(string deviceId, int opid, string remarks)
最后,我看到的错误是Invalid web service call, missing value for parameter: deviceId
. 我不明白问题可能是什么。 deviceId
在传入的 JSON 字符串文字中明确表示。