1#ifndef TGBOT_CURLHTTPCLIENT_H
2#define TGBOT_CURLHTTPCLIENT_H
17#include <unordered_map>
38 std::string
makeRequest(
const Url& url,
const std::vector<HttpReqArg>& args)
const override;
53 void setProxy(
const char* url = NULL,
long timeout = 20L) {
55 _connectTimeout = timeout;
60 const char* _proxyUrl = NULL;
61 long _connectTimeout = 20L;
std::unordered_map< std::thread::id, CURL * > curlHandles
Raw curl handles, each thread has its own handle.
std::mutex curlHandlesMutex
Lock for curlHandles access.
std::string makeRequest(const Url &url, const std::vector< HttpReqArg > &args) const override
Sends a request to the url.
void setProxy(const char *url=NULL, long timeout=20L)
Proxy URL (NULL = no proxy).
~CurlHttpClient() override
This class makes http requests.
This class parses a string with the url.