HTTP:是基于一种请求/响应模式的、无状态的、应用层的协议,基于TCP协议传输数据,支持客户/服务器模式,每次完整交互都包含HTTP请求和HTTP响应。
Http请求由三个部分组成,请求行、消息报头、请求正文(可选,为空也行);
请求方法主要包括:GET、POST、HEAD、PUT、DELETE…,在我工作中常用的就GET跟POST
GET:请求获取Request-URI所标识的资源;
POST:在Request-URI所标识的资源后附加新的数据(body);
每种方法规定了客户与服务器联系的类型不同,由于http协议简单,使得http服务器的程序规模小,因而通信速度快。
HTTP有5种状态码:
1xx:指示信息——表示请求已接收,继续处理。
2xx:成功——表示请求已被成功接收、处理、接受。
3xx:重定向——要完成请求必须进行更进一步的操作。
4xx:客户端错误——请求有语法错误错误或请求无法实现。
5xx:服务器端错误——服务器未能实现合法请求。
常见状态码
200 OK //客户端请求成功,请求已发送且响应已成功接收。
400 Bad Request //客户端请求有语法错误,目的服务器接收到请求但不理解细节,所以无法处理时发生
401 Unauthorized //请求未经授权
403 Forbidden //权限问题,服务器收到请求,但拒绝提供服务
404 Not Found //请求资源不存在,页面找不到(如果目标API已移动或已更新但未保留向后兼容性时发生)。
500 Internal Server Error //内部服务器错误。服务器端发生了某种致命错误,不能处理客户端请求且错误并被服务提供商捕获。
503 Server Unavailable //服务器当前不能处理客户端请求,一段时间后可能恢复正常