前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >HTTP协议

HTTP协议

作者头像
晚上没宵夜
发布2022-05-09 21:05:20
3350
发布2022-05-09 21:05:20
举报

1. 准备知识

TCP/IP协议(Transmission Control Protocol / Internet Protocol)是计算机通讯必须遵守的规则,是不同的通信协议的大集合,其里面就包括了HTTP,TCP,IP,SMTP等协议

TCP/IP协议这个大集合分为4层结构

其中TCP协议是传输层协议

就是所谓的三次握手协议,确保数据可靠安全

IP协议在网络层,它也是一种协议

负责把数据包转送到目的地

TCP/IP协议是基于TCP 和 IP 这两个协议共同工作的大协议

TCP和IP协同负责建立连接和转送数据的

HTTP是在应用层

浏览器通过HTTP协议向服务器传输信息,其上层协议是TCP\IP

2. HTTP协议

Http(htyper text transform protocal)超文本传输协议,即规定如何在互联网上传输超文本(HTML)的协议

2.1 分类

HTTP分为 请求响应 部分,二者十分相似。其中请求部分负责向服务器发送信息,而响应部分负责接收服务器传送过来信息

2.2 HTTP结构

根据分类其结构有

  • 请求部分:请求行请求头(包括空行)请求体
  • 响应部分:响应行响应头(包括空行)响应体
2.2.1 请求部分

请求头

代码语言:javascript
复制
<!--  空格隔开的三个部分分别表示请求方式、请求资源、请求协议和版本号  -->

POST /XXX/XXX/XXX.html HTTP/1.1

请求头

代码语言:javascript
复制
<!--  提供客户端信息、及本次请求的描述  -->

HOST:请求的主机地址 www.baidu.com
User-Agent:请求代替 Mozilla/5.0……
Accept-Language: 客户端可识别的语言种类 zh-CN,zh-TW
Accept-Encoding: 客户端接受的压缩格式 gzip, deflate, br

空行

代码语言:javascript
复制

请求体

代码语言:javascript
复制
<!--  约定客户端表单数据的提交格式  -->

<!--  GET请求方式的请求体为空,只在请求行的请求地址里添加数据  -->
GET /XXX/XXX/XXX.html?user=007&user=Howl HTTP/1.1

<!--  POST请求方式请求体不为空  -->
user=007&user=Howl
2.2.2 响应部分

响应头

代码语言:javascript
复制
<!--  空格隔开的两个部分分别表示请求协议及版本号、状态码  -->

HTTP/1.1 200 OK

响应头

代码语言:javascript
复制
<!--  提供响应数据的信息  -->

Date:响应时间 Wed, 19 Feb 2020 04:39:00 GMT
Content-Type: 响应内容格式 text/html;charset=utf-8
Content-Encoding: 响应个压缩格式 gzip
Content:响应信息长度 9527

空行

代码语言:javascript
复制

响应体

代码语言:javascript
复制
<!--  可能是图片、HTML、CSS、JS等  -->

XXXXXXXXXXX

3. 补充

请求方法

常见的有GET和POST,但是还有其他比如OPTIONS、PUT、DELETE等方法,这些方法当然有用处,现在比较流行的 RESTful 风格就是利用了这些不同的请求方法

常见状态码

状态码

解释

200

请求成功

204

服务器成功处理,但未返回内容

301

重定向

302

转发

401

请求要求用户的身份认证

404

找不到该对象

500

服务器内部错误,无法完成请求

持久连接

HTTP1.1每一次连接能处理多次请求,利用了长连接技术,之前的1.0版本每一次连接只能处理一次请求

提升传输效率

使用压缩技术或分块传输

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-12-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 准备知识
  • 2. HTTP协议
    • 2.1 分类
      • 2.2 HTTP结构
        • 2.2.1 请求部分
        • 2.2.2 响应部分
    • 3. 补充
      • 请求方法
        • 常见状态码
          • 持久连接
            • 提升传输效率
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档