AJAX JSON请求的有线格式(HTTP)在不同的框架中?

时间:2010-03-03 06:56:08

标签: ajax json http

我正在尝试找到有关各种JS / AJAX框架在向Web服务器发送JSON POST请求时创建的HTTP请求的更多低级详细信息。我非常重视有关以下框架的信息(但有关其他任何值得注意的例外情况的信息):。net,jquery,prototype,DWR和MooTools。

我想知道的是,当这些框架在服务器上调用不同的“方法”时,(在HTTP请求中)区分不同的方法调用是什么?到目前为止,我已经看到以下内容:

  1. URL区分方法调用,即“POST /app/s.svc/method1 HTTP / 1.1”与“POST /app/s.svc/method2 HTTP / 1.1”等。
  2. 不同方法调用的URL相同,但HTTP标头区分方法调用,即“X-AjaxPro-Method:method1”与“X-AjaxPro-Method:method2”等。
  3. 除了HTTP标头之外,还有其他“多路复用”方法调用同一URL的示例吗? JSON本身是否包含方法名称,而在HTTP标头中没有指示,就像仅包含在SOAP:Body中的SOAP方法一样,没有相应的“SOAPMethodName”标头?还有其他我没有的案例吗?

    感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

在HTTP中,您没有解决您解决资源的方法。从独立于框架的视图来看,HTTP Specification提供了三种主要方法,即资源上的GET,POST,PUT和DELETE(比如http://example.com/users/2,即id为2的用户)。这种资源概念背后的软件架构风格和这四种方法的统一接口称为REST

如果您遵循这种架构风格,有许多框架可以使用它并且它使用HTTP协议(在标头中发送X-AjaxPro-Method绝对是不是 HTTP符合标准)。

答案 1 :(得分:0)

虽然目前的趋势是针对REST over HTTP和RESTful服务,但这听起来像是您正在寻找的RPC机制。如果这是你想要的方向,你应该看看JSON-RPC。它是一种RPC机制,因此它比REST更接近SOAP或XML-RPC。