一、HTTP 请求方法

  1. GET:用于请求指定的页面信息,并返回实体主体。通常用于获取资源,不会对服务器上的资源进行修改。特点是请求参数会附加在 URL 后面,数据长度有限制,不太安全,因为参数会暴露在 URL 中,但使用方便、高效,常用于获取静态资源或查询数据。
  • 例如:GET /index.html?param1=value1&param2=value2 HTTP/1.1
  1. POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中,相对安全,可以传输大量数据,常用于向服务器提交数据以进行创建、更新等操作。
  • 例如:POST /submit-form HTTP/1.1,请求体中包含表单数据或其他要提交的数据。
  1. PUT:用于向指定资源位置上传其最新内容,常用来更新资源。与 POST 的区别在于,PUT 通常是幂等的,即多次相同的 PUT 请求应该产生相同的效果。
  • 例如:PUT /resource/123 HTTP/1.1,请求体中包含要更新的资源内容。
  1. DELETE:请求服务器删除指定的资源。同样通常是幂等的,多次删除同一资源应该产生相同的结果。
  • 例如:DELETE /resource/123 HTTP/1.1

二、请求头格式

请求头包含了关于请求的各种元信息,常见的有:

  1. User-Agent:标识发出请求的客户端类型和版本信息,例如浏览器名称和版本。
  • 例如:User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36
  1. Accept:告诉服务器客户端能够接受的内容类型,如文本、HTML、JSON 等。
  • 例如:Accept: application/json, text/plain;q=0.9
  1. Content-Type:当发送 POST 或 PUT 请求时,用于指定请求体中的内容类型。
  • 例如:Content-Type: application/x-www-form-urlencoded(用于表单数据提交)或Content-Type: application/json(用于提交 JSON 数据)。
  1. Authorization:用于包含身份验证信息,如令牌等。
  • 例如:Authorization: Bearer <token>
  1. Referer:表示当前请求的来源页面 URL。
  • 例如:Referer: https://www.example.com/previous-page

三、请求体格式

  1. 表单数据格式(application/x-www-form-urlencoded):
  • 键值对形式,多个键值对用 “&” 连接,键和值都经过 URL 编码。
  • 例如:param1=value1&param2=value2
  1. JSON 格式(application/json):
  • 以 JSON 对象的形式表示数据,结构清晰,易于阅读和解析。
  • 例如:{ "name": "John", "age": 30 }
  1. XML 格式:
  • 使用 XML 标记来组织数据,具有良好的可读性和扩展性。
  • 例如:<person><name>Jane</name><age>25</age></person>