1
0
mirror of https://github.com/arduino/Arduino.git synced 2025-03-15 12:29:26 +01:00

Merge pull request #2084 from arduino/ide-1.5.x-httpclient-allow-https

Allows HttpClient to call https urls
This commit is contained in:
Cristian Maglie 2014-05-21 11:24:43 +02:00
commit 4d5d0f68bd
2 changed files with 30 additions and 0 deletions

View File

@ -18,26 +18,43 @@
#include "HttpClient.h" #include "HttpClient.h"
HttpClient::HttpClient() :
insecure(false) {
// Empty
}
unsigned int HttpClient::get(String &url) { unsigned int HttpClient::get(String &url) {
begin("curl"); begin("curl");
if (insecure) {
addParameter("-k");
}
addParameter(url); addParameter(url);
return run(); return run();
} }
unsigned int HttpClient::get(const char *url) { unsigned int HttpClient::get(const char *url) {
begin("curl"); begin("curl");
if (insecure) {
addParameter("-k");
}
addParameter(url); addParameter(url);
return run(); return run();
} }
void HttpClient::getAsynchronously(String &url) { void HttpClient::getAsynchronously(String &url) {
begin("curl"); begin("curl");
if (insecure) {
addParameter("-k");
}
addParameter(url); addParameter(url);
runAsynchronously(); runAsynchronously();
} }
void HttpClient::getAsynchronously(const char *url) { void HttpClient::getAsynchronously(const char *url) {
begin("curl"); begin("curl");
if (insecure) {
addParameter("-k");
}
addParameter(url); addParameter(url);
runAsynchronously(); runAsynchronously();
} }
@ -50,4 +67,11 @@ unsigned int HttpClient::getResult() {
return exitValue(); return exitValue();
} }
void HttpClient::noCheckSSL() {
insecure = true;
}
void HttpClient::checkSSL() {
insecure = false;
}

View File

@ -23,6 +23,7 @@
class HttpClient : public Process { class HttpClient : public Process {
public: public:
HttpClient();
unsigned int get(String &url); unsigned int get(String &url);
unsigned int get(const char * url); unsigned int get(const char * url);
@ -30,6 +31,11 @@ class HttpClient : public Process {
void getAsynchronously(const char * url); void getAsynchronously(const char * url);
boolean ready(); boolean ready();
unsigned int getResult(); unsigned int getResult();
void noCheckSSL();
void checkSSL();
private:
boolean insecure;
}; };