使用 POST 请求时,在网址和请求正文中放置参数有什么区别吗?我正在测试一些Web界面,我发现无论我把参数放在哪里,服务器都会返回正确的结果。任何人都可以帮我解释一下吗?
答案 0 :(得分:0)
虽然您的问题似乎有点宽泛,但I find that no matter where I put my parameters, the server returns the right result
依赖于您正在与之交互的Web界面/服务器及其处理此类请求的能力。
按照设计,POST请求方法请求Web服务器接受 并存储包含在请求消息正文中的数据。它 通常在上传文件或提交完整的网页时使用 形式。
为了提供更大的灵活性,有API /服务器将检查传入请求的正文,标题和URL参数,以获取有效映射和提供请求所需的信息。
例如,如果发出了请求,并且在请求正文中将值发送为内容类型为application/x-www-form-urlencoded
,则请求正文使用与URL编码的查询字符串相同的格式:
POST http://path/to/resource
Content-Type: application/x-www-form-urlencoded
Content-Length: 28
parameter=value&also=another
同样的请求也可能没有内容,只有像
这样的查询字符串POST http://path/to/resource?parameter=value&also=another
Content-Length: 0
服务器可以将其映射到与先前请求相同的资源。
对于上传文件的POST请求可能不一样,这可能更复杂并且倾向于使用multipart/form-data
编码,而不是格式。
根据规范,服务器应该容忍从客户那里得到的东西,并且往往对他们返回客户的内容要严格。