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 32 33 34 35 36 37
#ifndef HTTPREQ_H #define HTTPREQ_H #include "libtwitcurl/curl/curl.h" #include "transport/logging.h" #include <iostream> #include <sstream> #include <string.h> class HTTPRequest { CURL *curlhandle; char curl_errorbuffer[1024]; std::string error; std::string callbackdata; static int curlCallBack(char* data, size_t size, size_t nmemb, HTTPRequest *obj); public: HTTPRequest() { curlhandle = NULL; } ~HTTPRequest() { if(curlhandle) { curl_easy_cleanup(curlhandle); curlhandle = NULL; } } bool init(); void setProxy(std::string, std::string, std::string, std::string); bool GET(std::string, std::string &); std::string getCurlError() {return std::string(curl_errorbuffer);} }; #endif