国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C++ 使用nlohmann/json和cpp-httplib 完成post請求

這篇具有很好參考價值的文章主要介紹了C++ 使用nlohmann/json和cpp-httplib 完成post請求。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

最近公司要我項(xiàng)目里弄http 請求,我沒用過。探索了這么點(diǎn)東西。

第一步:用vscode? 和它的 rest client插件完成post。

在文件里填入大數(shù)據(jù)同事給我的內(nèi)容,右鍵send request,就拉取到了這個車的點(diǎn)位們。

C++ 使用nlohmann/json和cpp-httplib 完成post請求

?第二步;開始寫代碼,文件目錄如下,include里放了json的頭文件。

?

C++ 使用nlohmann/json和cpp-httplib 完成post請求

?C++ 使用nlohmann/json和cpp-httplib 完成post請求

代碼如下:測試http.cpp

#include <iostream>
#include "httplib.h"
#include <nlohmann/json.hpp>
#include <Windows.h>
#include <string>
using namespace std;
using json = nlohmann::json;
int main()
{
    using json = nlohmann::json;
    json j_patch = R"({
        "did": "BCT5901642495177",
        "gpsStartTime" : "2022-11-14 15:11:35",
        "gpsEndTime" : "2022-11-14 15:11:29",
        "desc" : false,
        "pageSize" : 86400,
        "startRowKey" : "",
        "showColumns" : [
            "2602",
                "2603",
                "3014"
        ] ,
        "filterList" : [
            {
                "column": "2601",
                    "op" : "eq",
                    "value" : "0",
                    "filterIfMissing" : true
            }
        ] ,
                "parseValue": false
})"_json;
    
#if 1
    // 創(chuàng)建HTTP client 對象
    httplib::Client cli("192.168.13.73", 30001);
    // 注意這里設(shè)置時間的話有2種方式,(time_t sec, time_t usec)
    //cli.set_connection_timeout(300);
    //cli.set_read_timeout(300);
    // 創(chuàng)建header
    httplib::Headers headers = {
            { "content-type", "application/json" }
    };
    //auto res = cli.Post("/post", headers, params);
    // 參數(shù)準(zhǔn)備
    string strvalue = j_patch.dump();
    cout << strvalue << endl;
    // 發(fā)送請求
    auto res = cli.Post("/hbase/canList", headers, strvalue, "application/json");
    cout << res->status << endl;
    cout << res->body << endl;
#if 0
    // 把結(jié)果弄成json, 然后從json中取出data項(xiàng),
    auto jj = json::parse(res->body);
    json hk = jj["data"];
    string ss = jj.dump();

    cout << ss << endl;
#endif 
}

前面參數(shù)json 部分還可以用另一種方式:

    json bodyParamJson;
    bodyParamJson["did"] = "YXZ2612204084017";
    bodyParamJson["gpsStartTime"] = "2000-01-13 00:00:00";
    bodyParamJson["gpsEndTime"] = "2099-01-13 23:59:59";
    bodyParamJson["desc"] = false;
    bodyParamJson["pageSize"] = 86400;
    bodyParamJson["startRowKey"] = "";
    bodyParamJson["parseValue"] = false;
    bodyParamJson["showColumns"] = R"([
        "2602",
        "2603",
        "3014"
    ])"_json;

    bodyParamJson["filterList"] = R"([
        {
            "column": "2601",
            "op": "eq",
            "value": "0",
            "filterIfMissing": true
        }
    ])"_json;

    string ss = bodyParamJson.dump();

這樣就能配置param 參數(shù)了。文章來源地址http://www.zghlxwxcb.cn/news/detail-509672.html

到了這里,關(guān)于C++ 使用nlohmann/json和cpp-httplib 完成post請求的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 開源庫nlohmann json使用備忘

    nlohmann/json是一個用于解析JSON的開源C++庫,口碑一流,無需額外安裝其他第三方庫,還支持單個頭文件模式,使用起來非常方便直觀。 從官網(wǎng)https://github.com/nlohmann/json的Release頁面下載單個 json.hpp 即可直接使用,無需單獨(dú)編譯。 下面以示例的方式羅列nlohmann/json庫的基本使用方

    2024年02月16日
    瀏覽(24)
  • C++ vs2015編譯json和protobuf報錯nlohmann::detail::static_constnlohmann::detail::to_json_fn::value‘

    C++ vs2015編譯json和protobuf報錯nlohmann::detail::static_constnlohmann::detail::to_json_fn::value‘

    補(bǔ)充:這個問題也會導(dǎo)致protobuf編譯和使用報錯,按照本方法修復(fù)后問題解決 只要引入項(xiàng)目中的 #include “nlohmann/json.hpp” 用vs2015編譯就會報錯,甚至用vs2022的Visual Studio 2015 (v140)工具集編譯也會報同樣的錯誤,錯誤信息如下: 參考這篇博客“JSON for Modern C++ vs2015 企業(yè)版和專業(yè)

    2024年02月05日
    瀏覽(41)
  • c++ nlohmann/json 及修改json文件中個別關(guān)鍵字
JSON的三種格式https://blog.csdn.net/daxiong0816/article/details/125132404

    c++ nlohmann/json 及修改json文件中個別關(guān)鍵字 JSON的三種格式https://blog.csdn.net/daxiong0816/article/details/125132404

    (2條消息) nlohmann json使用_nlohmann::json_蝸牛單行道的博客-CSDN博客json為JavaScript object notation 是一種數(shù)據(jù)格式,逐漸替換掉了傳統(tǒng)的xml 。json數(shù)據(jù)格式的屬性名稱和字符串值需要用雙引號引起來,用單引號或者不用引號會導(dǎo)致讀取數(shù)據(jù)錯誤。json的另外一個數(shù)據(jù)格式是數(shù)組,和jav

    2024年02月08日
    瀏覽(17)
  • 使用nlohmann json庫進(jìn)行序列化與反序列化

    nlohmann源碼倉庫:https://github.com/nlohmann/json 使用方式:將其nlohmann文件夾加入,包含其頭文件json.hpp即可 demo

    2024年02月10日
    瀏覽(21)
  • nlohmann json:類型檢查

    nlohmann提供了成員函數(shù)type(),用于返回當(dāng)前的json數(shù)據(jù)類型: 可以根據(jù)type進(jìn)行類型檢查:

    2024年02月13日
    瀏覽(22)
  • 開源 C++ JSON 庫 sonic-cpp解析性能為 rapidjson 的 2.5 倍

    sonic-cpp 是由字節(jié)跳動 STE 團(tuán)隊(duì)和服務(wù)框架團(tuán)隊(duì)共同研發(fā)的一款面向 C++ 語言的高效 JSON 庫,極致地利用當(dāng)前 CPU 硬件特性與向量化編程,大幅提高了序列化反序列化性能,解析性能為 rapidjson 的 2.5 倍。 sonic-cpp 在字節(jié)內(nèi)部上線以來, 已為抖音、今日頭條等核心業(yè)務(wù),累計節(jié)省

    2023年04月19日
    瀏覽(24)
  • nlohmann json:實(shí)現(xiàn)map和struct的互轉(zhuǎn)

    可以借助json實(shí)現(xiàn)map和struct的互轉(zhuǎn):

    2024年02月11日
    瀏覽(27)
  • nlohmann json:通過items遍歷object/array

    編譯運(yùn)行輸出: key: one, value: 1 key: two, value: 2 key: 0, value: 1 key: 1, value: 2 key: 2, value: 4 key: 3, value: 8 key: 4, value: 16? 可以看到對于object可以通過key()和value()拿到鍵值對 對

    2024年02月13日
    瀏覽(22)
  • windows 下使用 vscode + mingw 完成簡單 c 或 cpp 代碼的運(yùn)行與調(diào)試

    windows 下使用 vscode + mingw 完成簡單 c 或 cpp 代碼的運(yùn)行與調(diào)試

    本文為原鏈的鏡像鏈接,更新可能不及時,如有能力,請訪問原始鏈接。 基于 VS Code + MinGW-w64 的 C 語言/C++簡單環(huán)境配置,專致小白 環(huán)境: Win10 21H2 19044.1381 + mingw + vscode 1.74.3 + C/C++ Extension Pack 插件 國內(nèi)鏡像盤: 鏈接 密碼:1dcs 簡單來說共分為 4 步 下載 mingw , vscode 和 插件 并

    2024年02月08日
    瀏覽(56)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包