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

摘要:
=CURLE_OK){fprintf;}//接收的数据存储在out中,输出//cout˂˂out。str()˂˂endl;stringstr_json=out.str();printf;curl_easy-cleanup;return0;}

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

#include <stdio.h>
#include <iostream>
#include <sstream>
using namespacestd;
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
", 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;
}

免责声明:文章转载自《libcurl进行HTTP GET获取JSON数据(转载)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇android之Parcel机制学习Windows 10正式版历代记:Version 1709、Build 16299都是什么鬼?下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

[Kong] basic-auth基本认证及ACL鉴权

目录 basic-auth 1. Route上启用插件 2. 创建一个Consumer 3. 为Consumer创建凭证 4. 验证凭证 ACL 用户鉴权 1. 在route上启用ACL鉴权插件 2. 关联comsumer Basic auth 与ACL 的总结 在上篇文章《key-auth实现对API请求的密钥认证》,简单学习了如何...

查询Linux服务器出口IP、curl命令查询Linux公网出口IP、Windows服务器查询出口IP

 在一些平台上做开发,如做钉钉开发、微信开发以及其他平台的二次开发,都需要服务器的出口IP,而出口IP除了固定的外,其他的有时候经常发生变化,下面就是几个常用的查询出口IP的方式: 1. Linux服务器出口IP查询: 网址1:myip.ipip.net: curl myip.ipip.net 查询结果: 网址2:cip.cc curl cip.cc 查...

[PHP]curl上传多文件

码一下curl上传多文件的行 5.5之前版本的写法 $file = array( 'pic[0]'=>"@E:\wwwroot\10003\temp_56.ini;type=text/html;filename=temp_56.ini", 'pic[1]'=>"@E:\wwwroot\10003\...

iOS实现地图半翻页效果--老代码备用参考

// Curl the image up or down     CATransition *animation = [CATransition animation];     [animation setDuration:0.35];     [animation setTimingFunction:UIViewAnimationCurveEaseInO...

Ubuntu18.04.2 amd64编译安装libcurl支持https

1.准备工作,安装ssl库: sudo apt-get installopenssl sudo apt-get install libssl-dev 2.下载libcurl源代码: wget https://curl.haxx.se/download/curl-7.65.3.tar.xz 3.解压并进入源代码目录: tar xf curl-7.65.3....

Yii2通过curl调用json-rpc接口

Yii2可以通过json-rpc为前端提供接口数据,通常情况睛会使用异步的形式调用接口,有时也会使用curl调用接口数据。 一、异步调用json-rpc接口 $.ajax({ type: 'POST', url: "http://localhost/index?r=test",...