get和post的区别和应用场景

it2022-05-05  158

原文链接:https://www.cnblogs.com/hmycheryl/p/8603365.html

区别:

1.传送方式不同:get通过地址栏传输,post通过报文传输。

2.get产生一个TCP数据包,post产生两个数据包。对于get方式的请求,浏览器会把http header和data一并发送出去,服务器响应200;而对于post浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200.

3.get参数有长度限制,传送数据量不能大于2kb,post传送数据量不受限制(一般会受服务器配置限制或者内存大小)。

4.get安全性非常低,post安全性较高,但是执行效率比post高。

5.get方式服务器端用Resquest.QueryString获取变量的值,post方式服务器端用Request.Form获取提交的数据。

6.get是从服务器上获取数据,而post是向服务器传送数据。

应用场景:

若符合下列任一种情况,则用get:

1.请求是为了查找资源,HTML表单数据仅用来帮助搜索。

2.请求结果无持续性的副作用。

3.收集的数据及HTML表单内的输入字段名称的总长不超过1024个字符。

若符合下列任一种情况,则用post:

1.请求的结果有持续性的副作用,例如数据库内添加新的数据库行。

2.若使用get方法,表单上收集的数据可能让URL过长。

3.要传送的数据不是采用7位的ASCII编码。

转载于:https://www.cnblogs.com/ldddd/p/11206732.html

相关资源:各显卡算力对照表!

最新回复(0)