当前位置:网站首页 > 编程语言 > 正文

网页传输协议怎么写(浏览器传输网页使用的协议是)



笔者对于HTTP协议也是初学,写这篇文章的主要目的是方便自己去理解HTTP协议的相关内容,所以有些描述并不是那么专业和全面,请多多包涵。

  • HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。
  • HTTP是一个应用层协议,由请求和响应构成,是一个标准的个客户端/服务器(C/S)模型。
    HTTP基于TCP/IP通信协议来传递数据。

HTTP就是Internet上的一个传输协议,本身一个C/S模型,基于TCP/IP通信协议来传递数据。
所谓协议就是通信双方共同约定的标准,就和人类的语言一样,只有具有相同协议(语言)的双方才能很好地通信。

  • 基于请求/响应模型的:一次请求对应一次响应

客户端一般终端,服务器端一般是网站。通过使用Web浏览器等工具,客户端发起一个HTTP请求,建立一个到服务器指定端口的TCP连接。HTTP服务器则在那个端口监听客户端发送过来的请求。一旦收到请求,服务器(向客户端)发回一个状态行和消息。

  • 基于TCP/IP的高级协议

TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。

在这里,对TCP/IP的细节不做过多阐释,知道是一个协议(簇)就好了。

  • 无状态的:每次请求之间相互独立,不能交互数据

无状态是指协议对于事务处理没有记忆能力。这种方式的一个坏处就是,如果后续的处理需要用到之前的信息,则必须要重传,这样就导致了每次连接传输的数据量增大。好处就是,如果后续的连接不需要之前提供的信息,响应就会比较快。

  • 无连接

无连接指的是限制每次连接只处理一个请求。服务器处理完客户端的请求,然后响应,并收到应答之后,就断开连接。这种方式可以节省传输时间。

  • 默认端口号:80

HTTP请求的格式为:请求行+请求头+请求空行+请求体(正文)

1.请求行

格式:请求方式+请求url+请求协议/版本

  • 请求方式
    最常用的为GETPOST
    • GET
    • 当客户端要从服务器上读取文档,点开某个链接,或者是通过浏览器上输入网址来浏览网页的时候,使用的都是GET方法,
    • GET方法请求参数和对应的值附加在URL后面,利用一个?代表URL的结尾以及附带参数的开始,参数用key=value键值对的方式书写,参数和参数之间用&符号隔开
    • 一般GET请求的参数的大小受限,最大不超过1024。
    • 由于参数明文的显示在了URL上面,因此不太适合传递私密的数据。
      来源:GET

    • POST
    • POST方法将请求的参数封装在了HTTP请求的请求体中,以名称/值的形式出现,请求的url长度没有限制。
    • POST请求一般用于表单数据的提交中。
    • 相对GET而言,POST较安全


2.请求头

  • User-Agent
    浏览器告诉服务器,我访问你使用的浏览器版本信息

  • Referer
    表示跳转到当前页面的之前的页面

  • Accept
    可接收的响应内容类型

  • Origin
    发起一个针对跨域资源共享的请求

3.请求空行

分割POST请求的请求头,和请求体。

4.请求体

封装POST请求消息的请求参数。

格式:状态行+响应头+空行+响应体

1.状态行

格式:HTTP协议版本+状态码+状态码的描述
常见的状态码有

  • 404
    服务器无法找到被请求的页面

  • 403
    对被请求页面的访问被禁止

状态码详情可参考大佬博客HTTP响应状态码参考。

2.响应头

由一些键值对构成,用来说明客户端要使用的一些附加信息。

3.空行

用于分割响应头和响应体。

4.响应体

服务器返回给客户端的具体信息。

HTTP协议基础知识学习
2019.12.15

参考资料:

  • HTTP协议详解
  • Http协议详解(深入理解)
到此这篇网页传输协议怎么写(浏览器传输网页使用的协议是)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • ofnp是什么材料(nfpp是什么材料)2025-12-11 12:45:10
  • linux yum命令的用法(linux yuzu)2025-12-11 12:45:10
  • ovns电子烟一次性(voom一次性电子烟)2025-12-11 12:45:10
  • max31865接线(max31865三线)2025-12-11 12:45:10
  • linux目录怎么删除命令(linux目录如何删除)2025-12-11 12:45:10
  • 网页文字拷贝(网页文字拷贝怎么弄)2025-12-11 12:45:10
  • Ubuntu镜像文件(Ubuntu镜像文件)2025-12-11 12:45:10
  • tmm审稿周期(tmm 投稿)2025-12-11 12:45:10
  • 游戏的分类按照类型来分类可分为哪几类(游戏的分类标准是什么 继续教育)2025-12-11 12:45:10
  • dv 试验(Dv试验报告)2025-12-11 12:45:10
  • 全屏图片