【渗透入门】HTTP请求包


前言

HTTP(HyperText Transfer Protocol)请求包,是Web通信的基础。HTTP请求包格式主要由以下几部分组成:

  1. 请求行:包含了请求方法(GET、POST、PUT、DELETE等)、资源URI和使用的HTTP版本。

  2. 请求头:包含多个键值对,用于提供客户端信息、认证信息、接受的内容类型等。

  3. 空行:一个单独的空行,用于分隔请求头和请求体。

  4. 请求体(可选):根据请求方法的不同,可能包含要发送给服务器的数据。

HTTP GET请求包

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive

在这个例子中,GET 是请求方法,/index.html 是资源的路径,HTTP/1.1 指明了协议版本。Host 请求头指出了目标服务器的域名,而其他请求头提供了浏览器和用户偏好的信息。

HTTP POST请求包

POST /submit-form HTTP/1.1
Host: www.example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 25

username=admin&password=secret

在这个例子中,POST 方法意味着客户端正在尝试向服务器发送一些数据,Content-Type 请求头指明了数据的格式,而 Content-Length 请求头指出了请求体的长度。请求体中包含了表单数据,用以登录或者提交表单。

Content-Type

Content-Type 是HTTP头部字段之一,用于指示资源的MIME类型。MIME类型是一种标准,用来定义数据的格式和类型,从而帮助接收方正确解析和处理数据。Content-Type 可以在HTTP请求或响应中出现,用来描述消息体(entity body)的类型。

MIME类型由两部分组成:类型(type)和子类型(subtype),通常用斜线分隔,如 type/subtype。类型表示数据的一般类别,而子类型则提供更具体的细节。此外,MIME类型可以包含参数,如字符集编码。

以下是Content-Type的一些常见类型及其示例:

  1. text/*:文本类型

    • text/html:HTML文档
    • text/plain:纯文本
    • text/xml:XML文档
    • text/css:CSS样式表
    • text/javascript:JavaScript代码
    • text/csv:逗号分隔值文件
  2. application/*:应用类型

    • application/json:JSON数据
    • application/xml:XML数据(不同于text/xml,通常用于应用程序间的数据交换)
    • application/pdf:PDF文档
    • application/msword:Microsoft Word文档
    • application/octet-stream:八位字节流,用于二进制数据
    • application/x-www-form-urlencoded:URL编码的表单数据,常用于POST请求
    • application/javascript:JavaScript代码(不同于text/javascript
    • application/vnd.ms-excel:Excel电子表格
  3. image/*:图像类型

    • image/jpeg:JPEG图像
    • image/png:PNG图像
    • image/gif:GIF图像
    • image/svg+xml:SVG矢量图形
  4. audio/* 和 video/*:音频和视频类型

    • audio/mpeg:MP3音频
    • video/mp4:MP4视频
    • video/mpeg:MPEG视频
  5. multipart/*:多部分类型,用于组合不同类型的数据

    • multipart/form-data:用于上传文件或多部分表单数据
    • multipart/mixed:混合类型数据
  6. message/*:消息类型

    • message/rfc822:电子邮件格式

这些类型可以带有参数,例如,Content-Type: text/html; charset=utf-8 表示HTML文档使用UTF-8字符集编码。


羡青山有思,白鹤忘机。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值