3

我最近看到一个 jQuery 示例,其中对“Default.aspx/Test”进行了 POST,其中 Test 是 Default.aspx 中的 WebMethod,请求的内容类型是“application/json”。

WebMethod 的回复是 JSON 格式的。我一直认为 WebMethods 返回 SOAP 响应,但如果我正确地解释了这段代码,就像我说的,WebMethod 返回 JSON。

它是否正确?WebMethods 是否以请求内容类型的格式返回响应?从什么时候开始可以做到这一点?总是?或者这是因为我安装了 ASP.NET AJAX?如果是这样,我可以反汇编哪些名称空间以查看其工作原理?

我只将 WebMethods 用于 .NET 到 .NET 的通信,它一直在 SOAP 中,并且始终编写自定义代码以根据指定所需的请求查询字符串参数以正确的格式(SOAP、JSON 或 XML)响应格式。我一直认为这种元格式功能需要 WCF。

4

1 回答 1

1

它是 的一部分ASP.NET AJAX。例如,请参阅在 ASP.NET AJAX 中使用 Web 服务。AJAX 客户端架构的一部分如下所示:

使用 HTTP POST 动词调用 Web 服务。POST 请求的主体包含浏览器发送到服务器的数据。它没有大小限制。因此,当数据大小超过 GET 请求的固有大小限制时,您可以使用 POST 请求。客户端将请求序列化为JSON格式,并将其作为 POST 数据发送到服务器。服务器将JSON数据反序列化为 .NET Framework 类型并进行实际的 Web 服务调用。在响应过程中,服务器将返回值序列化并将它们传递回客户端,客户端将它们反序列化为 JavaScript 对象进行处理。

于 2009-03-09T07:06:17.567 回答