get和post请求的区别
相同点:get和post都是向服务器提交数据 ,并且都会从服务器中获取数据
不同点:
get通过地址栏传输数据,post通过body传送数据
get长度受限,post传送长度不受限
get产生一个TCP数据包(header+data)一起发送,服务器响应200后返回数据,
post产生2个TCP数据包(先发送header,100continue后data),响应200,返回数据
get请求参数会被完整的保留在浏览器历史记录中,而post中参数不会被保存
查询用get,增删改用post
cookie、session、token的区别
相同:都是用于鉴权并且都是服务器生成
不同点:
保存位置不同:cookie保存在客户端浏览器,session保存在服务器内存,一半保存30分钟
依赖关系:session依赖cookie来识别session_id,如果浏览器禁用cookie,session也会失效,此时可通过URL传递session_id
安全性:session比cookie安全,别人可以分析本地cookie进行cookie欺骗
大小限制
session基本上无大小限制,单个cookie保存数据一般不超过4K,很多浏览器设置一个站点最多20个cookie
服务器性能
session会在一定时间内保存在服务器上,当访问增多,会比较占用服务器的性能
token存储在服务器的数据库中,通常通过一个接口或者登录状态获取,然后后续所有接口 必须要传token才能请求成功,token也可以通过cookie传输
返回码
1、1XX,信息提交
2、2XX,成功 200 OK
3、3XX 重定向
4、4XX 客户端错误,404 不存在的记录,401用户无权限,403访问被禁止
5、5XX 服务器错误,500服务器错误