HTTP协议GET和POST

GET方法会将所需要的参数添加在URL中,传递给服务器,这些参数是可见的,在浏览器的地址栏可以显示。列如:http://127.0.0.1:8080/home?name=alice 这是一个GET方法的HTTP。? 后是传送的参数是name=alice。如果是多个参数的话中间会用& 分隔,URL中是不允许出现空格以及一些特殊的字符,如果遇到这类字符会将其编译为类似%HH 之类的字符串。因为不同的浏览器对URL的长度有不同的限制。所以GET的所传送的字符串的数量是有限制的。

POST方法会将所需要的参数放在http协议的Body部分传送给服务器。传送是会先传送Head部分,然后传送Body部分。POST传送的参数不会在浏览器的地址栏显示。POST传送的数据理论上是没有大小限制的。

协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须使用什么编码方式。实际上,开发者完全可以自己决定消息主体的格式,只要最后发送的 HTTP 请求满足上面的格式就可以。

我在使用POSTMAN给我的服务器发送POST请求虽然发送的是POST请求,但是我把参数添加到了hear部,服务器还是可以正常的解析参数。但是当我的参数的字符数量较大的时候就出现了错误,服务器报错显示hear过大。最后自己我改把参数放到了body部分就可以正常的解析了。这说明类似这种URL地址http://127.0.0.1:8080/home?name=alice也可以是POST的方式只有hear中method参数是POST就可以了。服务器是通过该参数判断是用的哪个方法的。并不是URL的样式。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容