add PIHTTPClient::ignoreSSLErrors()
This commit is contained in:
@@ -93,6 +93,7 @@ bool PIHTTPClient::init() {
|
|||||||
// curl_easy_setopt(PRIVATE->handle, CURLOPT_VERBOSE, 1L);
|
// curl_easy_setopt(PRIVATE->handle, CURLOPT_VERBOSE, 1L);
|
||||||
// curl_easy_setopt(PRIVATE->handle, CURLOPT_ERRORBUFFER, buffer_error.data());
|
// curl_easy_setopt(PRIVATE->handle, CURLOPT_ERRORBUFFER, buffer_error.data());
|
||||||
curl_easy_setopt(PRIVATE->handle, CURLOPT_SSL_VERIFYPEER, 0L);
|
curl_easy_setopt(PRIVATE->handle, CURLOPT_SSL_VERIFYPEER, 0L);
|
||||||
|
curl_easy_setopt(PRIVATE->handle, CURLOPT_SSL_VERIFYHOST, ignore_ssl_errors ? 0L : 1L);
|
||||||
if (request.body().isNotEmpty()) {
|
if (request.body().isNotEmpty()) {
|
||||||
curl_easy_setopt(PRIVATE->handle, CURLOPT_UPLOAD, 1L);
|
curl_easy_setopt(PRIVATE->handle, CURLOPT_UPLOAD, 1L);
|
||||||
curl_easy_setopt(PRIVATE->handle, CURLOPT_INFILESIZE_LARGE, static_cast<curl_off_t>(request.body().size()));
|
curl_easy_setopt(PRIVATE->handle, CURLOPT_INFILESIZE_LARGE, static_cast<curl_off_t>(request.body().size()));
|
||||||
@@ -273,6 +274,12 @@ PIHTTPClient * PIHTTPClient::onAbort(std::function<void(const PIHTTP::MessageCon
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
PIHTTPClient * PIHTTPClient::ignoreSSLErrors() {
|
||||||
|
ignore_ssl_errors = true;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void PIHTTPClient::start() {
|
void PIHTTPClient::start() {
|
||||||
CurlThreadPool::instance()->registerClient(this);
|
CurlThreadPool::instance()->registerClient(this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,6 +48,10 @@ public:
|
|||||||
//! \~russian Устанавливает callback для прерывания запроса (с ответом о прерывании).
|
//! \~russian Устанавливает callback для прерывания запроса (с ответом о прерывании).
|
||||||
PIHTTPClient * onAbort(std::function<void(const PIHTTP::MessageConst &)> f);
|
PIHTTPClient * onAbort(std::function<void(const PIHTTP::MessageConst &)> f);
|
||||||
|
|
||||||
|
//! \~english Setup request to ignore SSL errors. Need to call before \a start().
|
||||||
|
//! \~russian Устанавливает игнорирование ошибок SSL. Необходимо вызывать перед \a start().
|
||||||
|
PIHTTPClient * ignoreSSLErrors();
|
||||||
|
|
||||||
//! \~english Starts the HTTP request execution.
|
//! \~english Starts the HTTP request execution.
|
||||||
//! \~russian Начинает выполнение HTTP-запроса.
|
//! \~russian Начинает выполнение HTTP-запроса.
|
||||||
void start();
|
void start();
|
||||||
@@ -83,6 +87,7 @@ private:
|
|||||||
PIByteArray buffer_out;
|
PIByteArray buffer_out;
|
||||||
PIHTTP::MessageMutable request, reply;
|
PIHTTP::MessageMutable request, reply;
|
||||||
std::atomic_bool is_cancel = {false};
|
std::atomic_bool is_cancel = {false};
|
||||||
|
bool ignore_ssl_errors = false;
|
||||||
ssize_t read_pos = 0;
|
ssize_t read_pos = 0;
|
||||||
std::function<void(const PIHTTP::MessageConst &)> on_finish, on_error, on_abort;
|
std::function<void(const PIHTTP::MessageConst &)> on_finish, on_error, on_abort;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user