412Precondition Failed 客户端错误
501Not Implemented(服务器错误)当未实施某个请求的操作时,出现此结果。
503Service Unavailable(服务器错误)当 Web API 服务不可用时,出现此结果。
GET与POST:
“get”方法提交的数据会直接填充在请求报文的URL上,如“https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1” “?”问号划分域名和get提交的参数,A=B中的A是参数名,B是参数值,多个参数之间用&进行分割,如果参数值是中文,则会转换成诸如%ab%12加密16进制码。一般来说,浏览器处理的URL最大限度长度为1024B(不同浏览器不一样),所以GET方法提交参数长度有限制。
“post”方法提交的数据会附在正文上,一般请求正文的长度是没有限制的,但表单中所能处理的长度一般为100k(不同协议不同浏览器不一样),而且需要考虑下层报文的传输效率,不推荐过长。
所以GET方法可以用来传输一些可以公开的参数信息,解析也比较方便,如百度的搜索的关键词,而POST方法可以用来提交一个用户的敏感信息(如果不使用HTTPS加密,报文正文仍旧是明文,容易被人截获读取)
主要特点
1、无连接
无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
2、无状态
HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
3、简单快速
客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
4、灵活
HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
5、支持B/S及C/S模式
作业:了解 HTTP 协议的基本知识,包括请求流程、请求方法等
http是超文本传输协议,默认端口号为80,客户端是动态的,浏览器会自动默认为80
https默认端口号为443
请求方法8种
get、post、put、delete、options、trace、connect、head
请求流程2种分为request和response,但是他们的流程都是相同的,一个请求一个接收
流程为:状态行、消息报头、空行和响应正文