HTTP:请求消息数据格式

简介: HTTP:请求消息数据格式
## HTTP:
  * 概念:Hyper Text Transfer Protocol 超文本传输协议
    * 传输协议:定义了,客户端和服务器端通信时,发送数据的格式
    * 特点:
      1. 基于TCP/IP的高级协议
      2. 默认端口号:80
      3. 基于请求/响应模型的:一次请求对应一次响应
      4. 无状态的:每次请求之间相互独立,不能交互数据
    * 历史版本:
      * 1.0:每一次请求响应都会建立新的连接
      * 1.1:复用连接
  * 请求消息数据格式
    1. 请求行
      请求方式 请求url 请求协议/版本
      GET /login.html HTTP/1.1
      * 请求方式:
        * HTTP协议有7中请求方式,常用的有2种
          * GET:
            1. 请求参数在请求行中,在url后。
            2. 请求的url长度有限制的
            3. 不太安全
          * POST:
            1. 请求参数在请求体中
            2. 请求的url长度没有限制的
            3. 相对安全
    2. 请求头:客户端浏览器告诉服务器一些信息
      请求头名称: 请求头值
      * 常见的请求头:
        1. User-Agent:浏览器告诉服务器,我访问你使用的浏览器版本信息
          * 可以在服务器端获取该头的信息,解决浏览器的兼容性问题
        2. Referer:http://localhost/login.html
          * 告诉服务器,我(当前请求)从哪里来?
            * 作用:
              1. 防盗链:
              2. 统计工作:
    3. 请求空行
      空行,就是用于分割POST请求的请求头,和请求体的。
    4. 请求体(正文):
      * 封装POST请求消息的请求参数的
    * 字符串格式:
      POST /login.html  HTTP/1.1
      Host: localhost
      User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0
      Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
      Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
      Accept-Encoding: gzip, deflate
      Referer: http://localhost/login.html
      Connection: keep-alive
      Upgrade-Insecure-Requests: 1
      username=zhangsan 
  * 响应消息数据格式
相关文章
|
4月前
|
JSON 监控 API
掌握使用 requests 库发送各种 HTTP 请求和处理 API 响应
本课程全面讲解了使用 Python 的 requests 库进行 API 请求与响应处理,内容涵盖环境搭建、GET 与 POST 请求、参数传递、错误处理、请求头设置及实战项目开发。通过实例教学,学员可掌握基础到高级技巧,并完成天气查询应用等实际项目,适合初学者快速上手网络编程与 API 调用。
525 130
|
7月前
|
JavaScript 前端开发 API
Node.js中发起HTTP请求的五种方式
以上五种方式,尽管只是冰山一角,但已经足以让编写Node.js HTTP请求的你,在连接世界的舞台上演奏出华丽的乐章。从原生的 `http`到现代的 `fetch`,每种方式都有独特的风格和表现力,让你的代码随着项目的节奏自由地舞动。
707 65
|
5月前
HTTP协议中请求方式GET 与 POST 什么区别 ?
GET和POST的主要区别在于参数传递方式、安全性和应用场景。GET通过URL传递参数,长度受限且安全性较低,适合获取数据;而POST通过请求体传递参数,安全性更高,适合提交数据。
592 2
|
6月前
|
Go 定位技术
Golang中设置HTTP请求代理的策略
在实际应用中,可能还需要处理代理服务器的连接稳定性、响应时间、以及错误处理等。因此,建议在使用代理时增加适当的错误重试机制,以确保网络请求的健壮性。此外,由于网络编程涉及的细节较多,彻底测试以确认代理配置符合预期的行为也是十分重要的。
281 8
|
6月前
|
缓存
|
5月前
|
JSON JavaScript API
Python模拟HTTP请求实现APP自动签到
Python模拟HTTP请求实现APP自动签到
|
5月前
|
数据采集 JSON Go
Go语言实战案例:实现HTTP客户端请求并解析响应
本文是 Go 网络与并发实战系列的第 2 篇,详细介绍如何使用 Go 构建 HTTP 客户端,涵盖请求发送、响应解析、错误处理、Header 与 Body 提取等流程,并通过实战代码演示如何并发请求多个 URL,适合希望掌握 Go 网络编程基础的开发者。
|
6月前
|
缓存 JavaScript 前端开发
Vue 3 HTTP请求封装导致响应结果无法在浏览器中获取,尽管实际请求已成功。
通过逐项检查和调试,最终可以定位问题所在,修复后便能正常在浏览器中获取响应结果。
272 0
|
6月前
|
Go
如何在Go语言的HTTP请求中设置使用代理服务器
当使用特定的代理时,在某些情况下可能需要认证信息,认证信息可以在代理URL中提供,格式通常是:
466 0
|
10月前
|
JSON API 网络架构
HTTP常见的请求方法、响应状态码、接口规范介绍
本文详细介绍了HTTP常见的请求方法、响应状态码和接口规范。通过理解和掌握这些内容,开发者可以更好地设计和实现W
1620 83