HTTP协议

HTTP协议

HTTP协议概述

HTTP(hypertext transport protocol)协议;中文叫超文本传输协议

更详细的HTTP介绍参考

请求报文的组成

  • 请求行
  • 请求头
  • 空行
  • 请求体

我们可以使用抓包工具(抓包工具-Fiddler详细介绍)对http请求抓包观察,或者使用浏览器的开发者工具(按F12打开)

HTTP的请求行

请求行为报文的第一行,请求行有四部分组成,以空格分隔

  • 请求方法(get、post、put、delete等)
  • 请求 URL(统一资源定位器)
  • HTTP协议版本号

HTTP请求头

格式:头名:头值

常见的请求头有:

请求头 解释
Host 主机名
Connection 连接的设置keep-alive(保持连接);close(关闭连接)
Cache-Control 缓存控制 max-age=0 (没有缓存)
Upgrade-Insecure-Requests 将网页中的http请求转化为https请求(很少用)老网站升级
User-Agent 用户代理,客户端字符串标识,服务器可以通过这个标识来识别这个请求来自哪个客户端 ,一般在PC端和手机端的区分
Accept 设置浏览器接收的数据类型
Accept-Encoding 设置接收的压缩方式
Accept-Language 设置接收的语言 q=0.7 为喜好系数,满分为1
Cookie 后面单独讲

HTTP的请求体

请求体内容的格式是非常灵活的,

(可以是空)==> GET请求,

(也可以是字符串,还可以是JSON)===> POST请求

例如:

  • 字符串:keywords=手机&price=2000

  • JSON:{"keywords":"手机","price":2000}

响应报文的组成

  • 响应行

    HTTP/1.1 200 OK
    
    • HTTP/1.1:HTTP协议版本号
    • 200:响应状态码

      404 Not Found; 500 Internal Server Error 更多响应状态码参考

    • OK:响应状态描述

      响应状态码和响应状态描述关系是一一对应的。

  • 响应头

    Cache-Control:缓存控制private私有的,只允许客户端缓存数据
    Connection 链接设置
    Content-Type:text/html;charset=utf-8 设置响应体的数据类型以及字符集,响应体为html,字符集utf-8
    Content-Length:响应体的长度,单位为字节
    
  • 空行

  • 响应体

    响应体内容的类型是非常灵活的,常见的类型有 HTML、CSS、JS、图片、JSON

posted @   wdszh  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示