2. get参数有长度限制(受限于url长度,具体的数值取决于浏览器和服务器的限制),而post无限制。
3.但请注意,Http协议并没有规定get一定要用url传参数,也没有规定post要用请求体传参数。
4.本质上都是基于TCP/IP的TCP链接,只是被定义了不同语义。
5.HTTP协议没有对POST进行任何限制,一般是受服务器配置限制或者内存大小。
6.PHP下可以修改php.conf的postmaxsize来设置POST的大小。
7.GET是通过URL方式请求,POST是通过请求header请求,可以开发者工具或者抓包可以看到,同样也是明文的。
8.GET请求会保存在浏览器历史纪录中,还可能会保存在Web的日志中,POST不会。
9.比如在微博这个场景里,GET的语义会被用在「看看我的Timeline上最新的20条微博」这样的场景,而POST的语义会被用在「发微博、评论、点赞」这样的场景中。
10.get多少次都不应改变页面呈现的数据,post会。所以post需要token来防止跨站请求漏洞。
11. Get 方式需要使用 Request.QueryString 来取得变量的值;而 Post 方式通过 Request.Form 来访问提交的内容。
12.GET在浏览器回退时是无害的,而POST会再次提交请求。
13.GET产生的URL地址可以被Bookmark,而POST不可以。
14.GET请求只能进行url编码,而POST支持多种编码方式。
15.GET参数通过URL传递,POST放在Request body中。