diff --git a/docs/Advanced_development/zh/QuecPythonSub/media/QuecPytgon_sbs_http_02.png b/docs/Advanced_development/zh/QuecPythonSub/media/QuecPytgon_sbs_http_02.png new file mode 100644 index 0000000000000000000000000000000000000000..6409e0a425ba2f2021e3832086c678ef3522030f Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonSub/media/QuecPytgon_sbs_http_02.png differ diff --git a/docs/sbs/zh/sbs/http.md b/docs/sbs/zh/sbs/http.md index 5e7be89307a6a7443ca07cf6584ed674b5bb3025..f5cd2bc69e4c01f1ab36a8d05402db8612a3163a 100644 --- a/docs/sbs/zh/sbs/http.md +++ b/docs/sbs/zh/sbs/http.md @@ -1,20 +1,19 @@ -### HTTP应用 开发指导 +# HTTP应用 开发指导 -#### **HTTP协议基础** - -**HTTP协议** +## HTTP协议基础 +### HTTP协议 HTTP协议是用于从万维网服务器传输超文本到本地浏览器的传送协议。基于TCP的应用层协议,它不关心数据传输的细节,HTTP(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,只有遵循统一的HTTP请求格式,服务器才能正确解析不同客户端发的请求,同样地,服务器遵循统一的响应格式,客户端才得以正确解析不同网站发过来的响应。 ![Client与Server通信](media/de988b13c542b7f454d13cc183693d82.png) -#### HTTP请求 +## HTTP请求 HTTP请求由请求行、请求头、空行、请求体组成。 ![HTTP请求构成](media/30dd898d830b27416fd3b691ae64e3dd.png) -**请求行** +### 请求行 请求行由请求方式 + address+ 协议版本组成。 @@ -24,7 +23,7 @@ HTTP请求由请求行、请求头、空行、请求体组成。 - 协议版本:客户端使用的HTTP协议版本号(目前使用的是http1.1)。 -**请求头** +### 请求头 请求头是客户端向服务器发送请求的补充说明。 @@ -44,7 +43,7 @@ HTTP请求由请求行、请求头、空行、请求体组成。 - Accept:浏览器可接受的媒体类型。 -**请求体** +### 请求体 请求体携带请求参数。 @@ -58,13 +57,13 @@ HTTP请求由请求行、请求头、空行、请求体组成。 - content-type:octets/stream。 -#### HTTP响应 +## HTTP响应 HTTP响应由状态行、响应头、空行、响应体组成。 ![HTTP响应构成](media/800f014c0ddfdeeef025fd803aa23697.png) -**状态行** +### 状态行 状态行由HTTP 版本号 + 响应状态码 + 状态说明组成。 @@ -80,15 +79,15 @@ HTTP响应由状态行、响应头、空行、响应体组成。 - 5XX:服务器端错误 - 服务器未能实现合法的请求响应头。 -**响应头** +### 响应头 响应头与请求头对应,是服务器对该响应的一些附加说明。 -**响应体** +### 响应体 为真正的响应数据,即为网页的HTML源代码。 -#### address +## address address是WWW的统一资源定位标志,就是指网络地址。 @@ -108,7 +107,7 @@ address格式:https://host:port/path?xxx=aaa&ooo=bbb - address-params:问号后面的是请求参数,格式:xxx=aaa。多个参数用&符号连接 -#### HTTP协议请求方法 +## HTTP协议请求方法 HTTP1.0定义了三种请求方法:GET、POST和HEAD方法。HTTP1.1新增了五种请求方法:OPTIONS、PUT、DELETE、TRACE和CONNECT方法。 @@ -129,9 +128,9 @@ HTTP1.0定义了三种请求方法:GET、POST和HEAD方法。HTTP1.1新增了 - CONNECT:*HTTP1.1*协议中预留给能够将连接改为管道方式的代理服务器。 -#### HTTP接口 +## HTTP接口 -**request.get** +### request.get 该函数用于发送GET请求。 @@ -153,7 +152,7 @@ request.get(address, data, json, headers) 返回请求对象 -**request.post** +### request.post 该函数用于发送POST请求。 @@ -175,7 +174,7 @@ request.post(address, data, json, headers) 返回请求对象 -**request.put** +### request.put 该函数用于发送PUT请求。 @@ -197,7 +196,7 @@ request.put(address, data, json, headers) 返回请求对象 -**request.head** +### request.head 该函数用于发送HEAD请求。 @@ -219,7 +218,7 @@ request.head(address, data, json, headers) 返回请求对象 -**request.patch** +### request.patch 该函数用于发送PATCH请求。 @@ -241,7 +240,7 @@ request.patch(address, data, json, headers) 返回请求对象 -**request.delete** +### request.delete 该函数用于发送DELETE请求。 @@ -263,7 +262,7 @@ request.delete(address, data, json, headers) 返回请求对象 -**reponse类方法说明** +### reponse类方法说明 response =request.get(address) @@ -274,18 +273,19 @@ response =request.get(address) | response.json() | 返回响应的json编码内容并转为dict类型 | | response.close() | 关闭socket | -#### 示例 +## 示例 -将QuecPython开发板连接至电脑,接入后的操作方法详见《Quectel_QuecPython_基础操作说明》。 +将QuecPython开发板连接至电脑,接入后的操作方法详见[《Quectel_QuecPython_基础操作说明》](https://python.quectel.com/doc/doc/sbs/zh/index.html)。 -开发板连接至电脑后,创建*test.py*文件,导入QuecPython的*request*模块,分别创建HTTP GET/PUT/POST/DELETE等请求代码,编写完成后,将文件上传到开发板内并运行*test.py*文件,方法详见《Quectel_QuecPython_基础操作说明》。示例代码及运行结果详见如下章节。 +开发板连接至电脑后,创建*test.py*文件,导入QuecPython的*request*模块,分别创建HTTP GET/PUT/POST/DELETE等请求代码,编写完成后,将文件上传到开发板内并运行*test.py*文件,方法详见[《Quectel_QuecPython_基础操作说明》](https://python.quectel.com/doc/doc/sbs/zh/index.html)。示例代码及运行结果详见如下章节。 -![开发板与电脑连接](media/6bb2bca69cee76f3586799191dd2cc87.jpeg) +![开发板与电脑连接](media/QuecPytgon_sbs_http_01.png) -**请求POST** +### 请求POST - **示例代码** +```python import request import ujson @@ -294,110 +294,117 @@ address = "http://httpbin.org/post" data = {"key1": "value1", "key2": "value2", "key3": "value3"} -**POST请求** +### POST请求 response = request.post(address, data=ujson.dumps(data)) -print(response.text) - +print(response.json()) +``` - **代码运行结果** -![](media/ca55e37f24bee44fa77138e1083be1d1.png) +![](media/QuecPytgon_sbs_http_02.png) -**请求GET** +### 请求GET - **示例代码** +```python import request address = "http://httpbin.org/get" -**GET请求** +### GET请求 response = request.get(address) -print(response.text) - +print(response.json()) +``` - **代码运行结果** -![](media/ac0ebee2450a2170f52aeeb36f06ef03.png) +![](media/QuecPytgon_sbs_http_03.png) -**请求PUT** +### 请求PUT - **示例代码** +```python import request address = "http://httpbin.org/put" -**PUT请求** +### PUT请求 response = request.put(address) -print(response.text) +print(response.json()) +``` +![](media/QuecPytgon_sbs_http_04.png) -![](media/2f3227680733adae0aa17b3b6518adb9.png) - -**请求**PATCH +### 请求PATCH - **示例代码** +```python import request address = "http://httpbin.org/patch" -**PATCH请求** +### PATCH请求 response = request.patch(address) -print(response.text) +print(response.json()) +``` - **代码运行结果** -![](media/480312d532ba119833ca7a16b897e409.png) +![](media/QuecPytgon_sbs_http_05.png) -**请求DELETE** +### 请求DELETE - **示例代码** +```python import request address = "http://httpbin.org/delete" -**DELETE请求** +### DELETE请求 response = request.delete(address) -print(response.text) - +print(response.json()) +``` - **代码运行结果** -![](media/e3245758512d024f27619fd8e359d53c.png) +![](media/QuecPytgon_sbs_http_06.png) -**请求HTTP连接** +### 请求HTTP连接 - **示例代码** +```python import request address = "https://myssl.com" -**HTTPS请求** +### HTTPS请求 response = request.get(address) -print(response.text) - +for i in response.text: + print(i) +``` - **代码运行结果** -![](media/fbea842752b5a5006c5a5cdac1632304.png) +![](media/QuecPytgon_sbs_http_07.png) -#### 附录A术语缩写 +### 附录A术语缩写 表1:术语缩写 diff --git a/docs/sbs/zh/sbs/media/2f3227680733adae0aa17b3b6518adb9.png b/docs/sbs/zh/sbs/media/2f3227680733adae0aa17b3b6518adb9.png deleted file mode 100644 index 7f6ca4627bc1e0ac8bdbfd2604ea0695c7c9062d..0000000000000000000000000000000000000000 Binary files a/docs/sbs/zh/sbs/media/2f3227680733adae0aa17b3b6518adb9.png and /dev/null differ diff --git a/docs/sbs/zh/sbs/media/480312d532ba119833ca7a16b897e409.png b/docs/sbs/zh/sbs/media/480312d532ba119833ca7a16b897e409.png deleted file mode 100644 index 2aea478646a9cf303c1635f88bade8567052d713..0000000000000000000000000000000000000000 Binary files a/docs/sbs/zh/sbs/media/480312d532ba119833ca7a16b897e409.png and /dev/null differ diff --git a/docs/sbs/zh/sbs/media/6bb2bca69cee76f3586799191dd2cc87.jpeg b/docs/sbs/zh/sbs/media/6bb2bca69cee76f3586799191dd2cc87.jpeg deleted file mode 100644 index 396c6a3aa1ef810bb603f4b7f8d00b914052c34d..0000000000000000000000000000000000000000 Binary files a/docs/sbs/zh/sbs/media/6bb2bca69cee76f3586799191dd2cc87.jpeg and /dev/null differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_01.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_01.png new file mode 100644 index 0000000000000000000000000000000000000000..466b1f1fb45f3dfdf08323643c5f28dc903a14f8 Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_01.png differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_02.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_02.png new file mode 100644 index 0000000000000000000000000000000000000000..6409e0a425ba2f2021e3832086c678ef3522030f Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_02.png differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_03.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_03.png new file mode 100644 index 0000000000000000000000000000000000000000..716c45d3ada859f4a4eeb01a1b4c73a581252a37 Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_03.png differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_04.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_04.png new file mode 100644 index 0000000000000000000000000000000000000000..d5a1818c3c18c047fc425e4f6b41aa34177fdc9e Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_04.png differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_05.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_05.png new file mode 100644 index 0000000000000000000000000000000000000000..2fb5acc72db427f288d9796c22f1f652b5ee574f Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_05.png differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_06.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_06.png new file mode 100644 index 0000000000000000000000000000000000000000..9b9acaaacb88297d8e855d584036e6e168bb9eed Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_06.png differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_07.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_07.png new file mode 100644 index 0000000000000000000000000000000000000000..23a91605302c5b9c5e30822bd90f6f880d1734b7 Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_http_07.png differ diff --git a/docs/sbs/zh/sbs/media/ac0ebee2450a2170f52aeeb36f06ef03.png b/docs/sbs/zh/sbs/media/ac0ebee2450a2170f52aeeb36f06ef03.png deleted file mode 100644 index aab96b58836cd5c2e4dfd207064d4d556592286f..0000000000000000000000000000000000000000 Binary files a/docs/sbs/zh/sbs/media/ac0ebee2450a2170f52aeeb36f06ef03.png and /dev/null differ diff --git a/docs/sbs/zh/sbs/media/ca55e37f24bee44fa77138e1083be1d1.png b/docs/sbs/zh/sbs/media/ca55e37f24bee44fa77138e1083be1d1.png deleted file mode 100644 index b19bdbfe047e2ece48b1addb47209f468a862ddc..0000000000000000000000000000000000000000 Binary files a/docs/sbs/zh/sbs/media/ca55e37f24bee44fa77138e1083be1d1.png and /dev/null differ diff --git a/docs/sbs/zh/sbs/media/e3245758512d024f27619fd8e359d53c.png b/docs/sbs/zh/sbs/media/e3245758512d024f27619fd8e359d53c.png deleted file mode 100644 index b3dcf8b6c0935260cfbd5475a947038579eff4a2..0000000000000000000000000000000000000000 Binary files a/docs/sbs/zh/sbs/media/e3245758512d024f27619fd8e359d53c.png and /dev/null differ diff --git a/docs/sbs/zh/sbs/media/fbea842752b5a5006c5a5cdac1632304.png b/docs/sbs/zh/sbs/media/fbea842752b5a5006c5a5cdac1632304.png deleted file mode 100644 index 76fab99b76cd2322d78bac0aed2a40f8b3398d8e..0000000000000000000000000000000000000000 Binary files a/docs/sbs/zh/sbs/media/fbea842752b5a5006c5a5cdac1632304.png and /dev/null differ