举例来说,使用curl可以在GET请求中“post”数据(发送实体主体)。这样做是有效的吗?我指的是:
- 这不被任何RFC规范禁止吗?
- 是否有人因为某种好的理由而使用它?
举例来说,使用curl可以在GET请求中“post”数据(发送实体主体)。这样做是有效的吗?我指的是:
请参阅RFC2616 - 超文本传输协议 -- HTTP/1.1,第4.3节"消息体":
如果请求方法的规范(第5.1.1节)不允许在请求中发送实体主体,则请求中不得包含消息主体。
在第9.3节“GET”中,包括实体正文并未被禁止。
因此,是的,您可以通过HTTP GET请求发送实体正文。
有一个很好的使用案例存在。
Elasticsearch在GET请求中使用实体主体数据,尝试将GET动词用作读取,同时允许比仅使用URL更复杂的规范(容易实现)。