Http相关知识整理【笔记整理】
http状态码
1xx (临时响应) 表示临时响应并需要请求者继续执行操作
2xx (表示成功)表示成功处理了请求
3XX (重定向) 表示完成请求需要进一步操作,通常这些状态码用来重定向
4xx (错误)表示请求可能出错,妨碍了服务器处理
5xx (服务器错误) 表示服务器在尝试处理请求时发生内部错误,这些错误可能是服务器本是错误而不是请求错误
200 服务器已成功处理了请求,通常表示误区七提供了请求页面
304 未修改,自上次请求后,请求的网页未修改过,服务器返回此响应使不会返回网页内容
401 未授权,请求要求身份验证,对于需要登录的网页,服务器可能返回此响应
403 禁止,服务器拒绝请求
404 未找到,服务器找不到请求的资源
500 服务器错误,服务器发生内部错误,一般是指服务器代码出现问题
//---------------------------------------------------------------------------------
cookie
是保存在浏览器终端内存或磁盘上的一小块数据,只能保存字符串类型,所有cookie信息都会随着浏览器的请求而发送
cookie分为:
持久cookie,数据保存在磁盘中
会话cookie,数据保存在内存中,浏览器关闭后被清掉
尽管浏览器都支持cookie,但浏览器对单域下cookie的个数和每个key的长度都有限制
session
是一种服务端机制,服务端使用一种散列表的结构来保存信息,客户端需要接受,记忆和回送session的会话标识
session通常是借助客户端存储的cookie来记录会话标识
Get方式是Url中的普通参数,Get方式是明文传输,其传输的数量一般有限制,各浏览器支持最大长度略有不同
如何实现保持用户状态:
服务端在客户端第一次访问时创建一个session存储客户端信息,同时生成一个唯一key发送给客户端,如果客户端没有禁用cookie,服务器会在客户端cookie中写入一个key的值用来保存用户信息,之后每次访问都会携带cookie给后台,服务端根据这个key进行判断用户唯一性
如果用户禁用cookie 则需要将验证信息写入url中,所有请求都需要携带这个参数【否则客户端会丢失会话状态】