我试图通过AJAX在WebForms应用程序中调用Web服务。
我的剧本看起来是这样的:
$.post('UpdateServer.asmx/ProcessItem',
'itemId=' + $(this).text(),
function (result) {
alert(result);
});
我的web服务看起来是这样的。
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
[System.Web.Script.Services.ScriptService]
public class UpdateServer : System.Web.Services.WebService
{
[WebMethod]
public string ProcessItem(int itemId)
{
return new JavaScriptSerializer().Serialize(
new { Success = true, Message = "Here I am!" });
}
}
Web方法按预期的方式调用,并带有预期的参数。然而,传递给我的成功函数(最后一个参数为$ .post())的参数是文档类型,并且不包含我期望的成功和消息成员。
什么是魔术词,以便我可以找回我期待的对象?
编辑
仔细观察,我能找到我要找的如下数据:
result.childNodes [0] .childNodes [0]。数据: “ { “成功”:真实的, “消息”: “服务器更新成功!”}”
你可以发布该方法的实际http响应吗?你可以使用chrome开发工具或者像fiddler这样的工具记录下来。 – 2012-04-15 21:08:36
什么是你收到的文件? – domoindal 2012-04-15 21:14:23