Prechádzať zdrojové kódy

【修改】更新版本号 V2.2.0 ,添加版本改动说明

chenyong 6 rokov pred
rodič
commit
c7d11332ae
3 zmenil súbory, kde vykonal 38 pridanie a 8 odobranie
  1. 2 1
      README.md
  2. 34 5
      docs/migration-guide.md
  3. 2 2
      inc/webclient.h

+ 2 - 1
README.md

@@ -99,7 +99,8 @@ RT-Thread online packages
 ## 4、注意事项
 ## 4、注意事项
 
 
  - WebClient 软件包连接 HTTPS 服务器时需要开启 WebClient 中对 TLS 功能的支持。
  - WebClient 软件包连接 HTTPS 服务器时需要开启 WebClient 中对 TLS 功能的支持。
- - WebClient 软件包版本更新(`V1.0.0 -> 当前最新版 V2.0.0`)后软件包中函数接口和使用流程都有所变化,若开发者代码中使用之前接口,可以适配最新版本接口,或者在版本号配置中选择 `V1.0.0` 版本,具体改动方式可参考软件包 [迁移指南](docs/migration-guide.md)。
+ - WebClient 软件包版本更新(`V1.0.0 -> V2.0.0`)后软件包中函数接口和使用流程都有所变化,若开发者代码中使用之前接口,可以适配最新版本接口,或者在版本号配置中选择 `V1.0.0` 版本,具体改动方式可参考软件包 [迁移指南](docs/migration-guide.md)。
+ - webclient 软件包版本更新(`V2.1.0 -> V2.2.0`),为了适配非字符串数据传输,部分接口定义有所改动,具体修改可参考软件包 [迁移指南](docs/migration-guide.md)。
 
 
 
 
 ## 5、联系方式 & 感谢
 ## 5、联系方式 & 感谢

+ 34 - 5
docs/migration-guide.md

@@ -1,8 +1,10 @@
 # 迁移指南
 # 迁移指南
 
 
+## 1、V1.0.0 -> V2.0.0 版本改动
+
 本节主要介绍 WebClient 软件包版本升级之后(`V1.0.0` -> 最近版本 `V2.0.0`),软件包的改动和适配最新版本的方式。
 本节主要介绍 WebClient 软件包版本升级之后(`V1.0.0` -> 最近版本 `V2.0.0`),软件包的改动和适配最新版本的方式。
 
 
-## 函数改动
+### 函数改动
 
 
 1. 添加 `webclient_session_create()` 创建客户端结构体函数
 1. 添加 `webclient_session_create()` 创建客户端结构体函数
 
 
@@ -29,9 +31,9 @@
 - 添加获取当前响应状态码函数(`webclient_resp_status_get` );
 - 添加获取当前响应状态码函数(`webclient_resp_status_get` );
 - 添加获取当前响应 Content-Length 数据函数(`webclient_content_length_get`)。
 - 添加获取当前响应 Content-Length 数据函数(`webclient_content_length_get`)。
 
 
-## 流程改动
+### 流程改动
 
 
-### GET 请求流程改动
+#### GET 请求流程改动
 
 
 下面以发送自定义头部数据的 GET 请求方式为例,介绍新版本软件包中 GET 流程改动。
 下面以发送自定义头部数据的 GET 请求方式为例,介绍新版本软件包中 GET 流程改动。
 
 
@@ -93,7 +95,7 @@ while(1)
 webclient_close(session);
 webclient_close(session);
 ```
 ```
 
 
-### POST 请求流程改动
+#### POST 请求流程改动
 
 
 下面以发送自定义头部数据的 POST 请求方式为例,介绍新版本软件包中的 POST 流程改动。
 下面以发送自定义头部数据的 POST 请求方式为例,介绍新版本软件包中的 POST 流程改动。
 
 
@@ -148,4 +150,31 @@ webclient_post(session, URI, post_data, rt_strlen(post_data));
 webclient_close(session);
 webclient_close(session);
 ```
 ```
 
 
-上述介绍 WebClient 常用 GET/POST 请求方法改动,更多流程介绍请查看软件包 [使用指南](user-guide.md)。
+上述介绍 WebClient 常用 GET/POST 请求方法改动,更多流程介绍请查看软件包 [使用指南](user-guide.md)。
+
+## 2、V2.1.0 -> V2.2.0 版本改动
+
+V2.2.0 版本主要改动部分为函数接口参数定义,目的是为了适配非字符串格式数据的读写,其他函数的使用流程未产生明显改动。
+
+### 函数改动
+
+- `webclient_post` 函数参数改动
+
+  该函数入参 `const char *post_data` 修改为 `const void *post_data`,并添加`size_t data_len` 参数,用于确定需要发送的数据长度。
+
+- `webclient_read` 函数参数改动
+
+  该函数入参 `unsigned char *buffer` 修改为 `void *buffer`,用于适配非字符串数据接收。
+
+- `webclient_write` 函数参数改动
+
+  该函数入参 `const unsigned char *buffer` 修改为 `const void *buffer`,用于适配非字符串数据发送。
+
+- `webclient_response` 函数参数改动
+
+  该函数入参 `unsigned char **response` 修改为 `void  **response`,并且添加参数 `size_t *resp_len`,用于获取接收数据长度信息,适配非字符串数据接收。
+
+- `webclient_request` 函数参数改动
+
+  该函数入参 `const char *post_data` 修改为 `const void *post_data`,入参 `unsigned char **response` 修改为 `void **response`,并且添加入参 `size_t data_len` 和 `size_t *resp_len`,用于适配非字符串数据接收和发送。
+

+ 2 - 2
inc/webclient.h

@@ -47,8 +47,8 @@ extern "C" {
 #define web_strdup                     rt_strdup
 #define web_strdup                     rt_strdup
 #endif
 #endif
 
 
-#define WEBCLIENT_SW_VERSION           "2.1.2"
-#define WEBCLIENT_SW_VERSION_NUM       0x20102
+#define WEBCLIENT_SW_VERSION           "2.2.0"
+#define WEBCLIENT_SW_VERSION_NUM       0x20200
 
 
 #define WEBCLIENT_HEADER_BUFSZ         4096
 #define WEBCLIENT_HEADER_BUFSZ         4096
 #define WEBCLIENT_RESPONSE_BUFSZ       4096
 #define WEBCLIENT_RESPONSE_BUFSZ       4096