Http请求方法和参数


Http Request Methods, and Parameters

好吧,出于好奇,接受查询字符串中参数的HTTP方法是什么?他们都是?哪些HTTP方法中的参数必须通过cURL POSTFIELDS发送?

所有请求方法(GETHEADPOSTOPTIONSPUTTRACEDELETEBREW(都可以具有GET风格的?x=y请求参数。这对其他一些人来说是非常罕见的(CONNECT(。

原因是HTTP处理";资源";,而且它实际上并不关心URL参数。从/路径分隔符开始,它只是一个资源名称。其中是否有任何?问号,或者接收Web服务器是否使用@代替它都无关紧要,因为具体实现。

HTTP客户端显然知道URL方案以及如何拆分它们,但这对协议本身来说并不是什么大问题。我认为规范(RFC1616(除了URL方案描述之外几乎没有提及。HTTPbis可能更为复杂。

如果您有一个带有其他方法的POST风格的请求体,那么它实际上不太依赖于HTTP谓词,而是依赖于Content-Type:Content-Length:请求头的存在。