HTTP请求方法的有效载荷
HTTP上的Wikipedia条目列出了以下HTTP请求方法:
我有兴趣知道(特别是关于前五种方法):
我很感激所有的输入,如果你可以分享一些(最好是轻的)阅读,那也太棒了!
RFC 7231,HTTP 1.1语义和内容是关于HTTP方法语义的最新和权威的来源。 该规范指出,对于可能包含在GET,HEAD,OPTIONS或CONNECT消息中的有效内容,没有定义的含义。 4.3.8节说明客户端不得发送TRACE请求的主体。 所以,只有TRACE不能有一个有效载荷,但如果客户端发送一个(意味着它可以忽略它),GET,HEAD,OPTIONS和CONNECT可能不会知道如何处理它。
如果您认为有什么不明确的地方,那么您可以通过邮件列表来表达您的疑虑。
以下是RFC 7231的摘要,链接的更新版本@Darrel发布:
正如@John也提到的,所有请求方法都支持URL中的查询字符串(一个值得注意的例外可能是OPTIONS ,如果URL是HOST/*
,它似乎只是有用的[在我的测试中])。
我没有测试CONNECT和PATCH方法,因为我对它们没有兴趣。
我很确定GET请求是否可以有有效载荷并不清楚。 GET请求通常通过查询字符串发布表单数据,对于HEAD请求也是如此。 HEAD本质上是GET - 除了它不需要响应主体。
(注意:我说这不是很清楚,因为GET请求在技术上可以升级到另一个协议;事实上,一个websockets版本就是这样做的,虽然一些代理软件可以很好地处理它,但其他人却在握手时感到尴尬)。
POST通常有一个主体。 没有什么会阻止您使用查询字符串,但POST正文通常会在POST中包含表单数据。
有关更多(和更详细的)信息,我会碰到实际的HTTP / 1.1规格。
链接地址: http://www.djcxy.com/p/42167.html