{"retcode":0,"retmessage":"Success","recordnum":1,"resultdata":[{"AppNo":"20220812009980000000172"}]} 用 json 取出 retcode 还有 retmessage
时间: 2023-08-20 14:05:40 浏览: 56
使用 JSON 解析库可以很容易地从给定的 JSON 数据中提取 retcode 和 retmessage 字段的值。以下是一个示例代码片段,使用 Python 中的 json 模块进行解析:
```python
import json
# 示例 JSON 数据
json_data = '{"retcode":0,"retmessage":"Success","recordnum":1,"resultdata":[{"AppNo":"20220812009980000000172"}]}'
# 解析 JSON 数据
data = json.loads(json_data)
# 获取 retcode 和 retmessage 的值
retcode = data["retcode"]
retmessage = data["retmessage"]
# 打印结果
print("retcode:", retcode)
print("retmessage:", retmessage)
```
以上代码将输出:
```
retcode: 0
retmessage: Success
```
这样就成功地从给定的 JSON 数据中提取了 retcode 和 retmessage 字段的值。
相关问题
使用libcurl 发送http post 请求并且解析应答{"retcode":0,"retmessage":"Success","recordnum":0,"resultdata":[]} 使用 nlohmann
如果您想使用nlohmann库来解析HTTP响应中的JSON数据,您可以将上述示例代码中的jansson库替换为nlohmann库,并进行相应的修改。以下是修改后的示例代码:
```c++
#include <iostream>
#include <string>
#include <curl/curl.h>
#include <nlohmann/json.hpp>
using json = nlohmann::json;
// 用于保存HTTP响应的数据
struct ResponseData {
std::string response;
};
// libcurl的写入回调函数,用于将响应数据保存到ResponseData结构中
size_t write_callback(void* contents, size_t size, size_t nmemb, std::string* response_data) {
size_t real_size = size * nmemb;
response_data->append(static_cast<char*>(contents), real_size);
return real_size;
}
int main() {
CURL* curl;
CURLcode res;
// 初始化libcurl
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if(curl) {
struct ResponseData response_data;
// 设置POST请求的URL
curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/api");
// 设置POST请求的数据
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "{\"param1\":\"value1\",\"param2\":\"value2\"}");
// 设置写入回调函数
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &(response_data.response));
// 发送HTTP POST请求
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
} else {
printf("Response: %s\n", response_data.response.c_str());
// 解析JSON响应
try {
json j = json::parse(response_data.response);
int retcode = j["retcode"];
std::string retmessage = j["retmessage"];
int recordnum = j["recordnum"];
json resultdata = j["resultdata"];
// 输出解析的字段值
std::cout << "retcode: " << retcode << std::endl;
std::cout << "retmessage: " << retmessage << std::endl;
std::cout << "recordnum: " << recordnum << std::endl;
// 可以进一步处理resultdata
} catch (const std::exception& e) {
std::cerr << "Failed to parse JSON: " << e.what() << std::endl;
}
}
// 清理libcurl资源
curl_easy_cleanup(curl);
}
// 全局清理
curl_global_cleanup();
return 0;
}
```
在这个示例代码中,我们使用了nlohmann库来解析JSON响应。我们将响应数据保存在`ResponseData`结构中,并在回调函数中进行了修改。然后,我们使用`json::parse()`来解析JSON响应,并提取相应的字段值。
请确保已安装CURL库和nlohmann库,并将上述代码保存为一个C++文件进行编译和运行。根据您的实际情况修改URL和POST请求的数据。
{ "msg": "refer错误", "retcode": 100101 }
根引用中的代码,{"msg": "refer错误","retcode": 100101} 是一个错误的返回信息。在这个例子中,该错误信息是由于请求地址参数错误引起的。具体来说,参数"refer"的值不符合要求,导致返回错误码100101。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [Python爬虫(第五周)](https://blog.csdn.net/zh20001109zh/article/details/118470430)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [requests+python+unitte实现接口测试回归](https://blog.csdn.net/m0_59315964/article/details/123751751)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)