随笔 - 833  文章 - 1  评论 - 106  阅读 - 200万

libcurl进行HTTP GET获取JSON数据(转载)

转载:http://blog.csdn.net/vincent2610/article/details/68488365

复制代码
复制代码
#include <stdio.h>
#include <iostream>
#include <sstream>
using namespace std;

size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream) 
{
    string data((const char*) ptr, (size_t) size * nmemb);

    *((stringstream*) stream) << data << endl;

    return size * nmemb;
}

int main(int argc, char *argv[])
{
    
        // 基于当前系统的当前日期/时间
        time_t now = time(0);
        char* dt = ctime(&now);
        cout << dt << "-------------------------------------" << endl;

        /*HTTP GET json data*/
        std::stringstream out;
        void* curl = curl_easy_init();
        // 设置URL
        curl_easy_setopt(curl, CURLOPT_URL, "http://if.qdocument.net:705/bic/download/initFiles?uid=weidong0925@126.com&pageNum=1");
        // 设置接收数据的处理函数和存放变量
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, &out);

        // 执行HTTP GET操作
        CURLcode res = curl_easy_perform(curl);
        if (res != CURLE_OK) {
            fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
        }

        // 接受数据存放在out中,输出之
        //cout << out.str() << endl;
        string str_json = out.str();


        printf("%s",str_json.c_str());
        curl_easy_cleanup(curl);

    return 0;
}
复制代码
复制代码
posted on   3D入魔  阅读(1771)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2017-12-14 Cesium应用篇:1快速搭建 【转】
2016-12-14 System.Diagnostics.Debug和System.Diagnostics.Trace 【转】
2012-12-14 场景数据的动态更新setDataVariance(osg::Object::DYNAMIC) (转)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示