HTTP协议
HTTP协议也称为超文本传输协议是一个简单的基于请求-响应的协议,它运行在TCP之上,所以属于应用层协议。
协议规范
HTTP实际上就是按照HTTP协议的规范,将TCP数据段进一步封装为HTTP数据包发送给对方,将对方发来的HTTP数据包按规范逐次拆解的过程。
HTTP 请求头部
- 请求行:请求方法 URL(统一资源定位符)/URI(统一资源标识符) 协议版本(HTTP/1.1)\r\n
- 头部字段1\r\n
- 头部字段2\r\n
- \r\n
- 请求包体\r\n
请求方法
HTTP协议的请求方法常见的有 GET(获取资源)、HEAD(获得报文首部)、POST(传输实体主体)、PUT(传输文件) 等
首部字段
- Host:请求资源所在的服务器
elample
//HTTP协议格式
sprintf(buf,"GET https://api.seniverse.com/v3/weather/now.json?key=%s&location=%s&language=zh-Hans&unit=c "
"HTTP/1.1\r\n"
"Host:api.seniverse.com\r\n"
"\r\n",KEY,LOCAL);
响应头部
- 状态行:协议版本 状态码 状态码描述 \r\n
- 响应头部: 头部字段名称:值 \r\n
....... - 空行
- 响应包体