关于http协议的知识笔记

http原理

想要了解http中的原理,我们可以参考Introduction to HTTP
这里我总结一下蓝桥云课堂中Python实现简单Web服务器的实验原理运用到的一些知识:

一般我们的 web 程序都运行在 TCP/IP 协议上,程序之间使用 socket(套接字) 进行通信,它能够让计算机之间的通信就像写文件和读文件一样简单。 一个 tcp socket 由一个 IP 地址和端口号组成。

  • IP 地址是一个 32 位的二进制数,通常被分割为 4 个“8 位二进制数”,写成 10 进制的形式就是我们常见的 174.136.14.108。我们通过 IP 地址来标识所连接的主机。
  • 端口号是一个范围在 0-65535 之间的数字,一台主机上可能同时有多个 sockets,因此需要端口号进行标识。端口号 0-1023 是保留给操作系统使用的,我们可以使用剩下的端口号。

超文本传输协议(HTTP)交换数据的方法:
传输过程图:
在这里插入图片描述
HTTP 请求就是一段文本,任何程序都能生成一个 http 请求,就像生成文本一样简单。这段文本需要包含以下这些部分:
在这里插入图片描述

  • HTTP method:HTTP请求方法。最常用的就是GET(抓取数据)与POST(更新数据或者上传文件)
  • URL:通常是客户端请求的文件的路径,比如/research/experiments.html, 但是是否响应文件都是由服务器决定的。
  • HTTP version:HTTP 版本。通常是 HTTP/1.0 或 HTTP/1.1
  • header field:HTTP 头的键值对,做一些基本设置
  • body: 一些与请求有关的负载数据。比如在一个网站登陆的时候提交登陆表单,那负载数据就是你的账号与密码信息。

HTTP响应结构:
在这里插入图片描述

  • status code:状态码。请求成功响应 200,请求的文件找不到则响应 404。
  • status phrase:对状态码的描述。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值