1
0
mirror of https://github.com/esp8266/Arduino.git synced 2025-04-19 23:22:16 +03:00

Rename ESP8266httpClient to ESP8266HTTPClient (part 1)

This commit is contained in:
Ivan Grokhotkov 2015-11-30 09:48:07 +03:00
parent abd98f1ff8
commit 14f67c4ebc
9 changed files with 1035 additions and 1035 deletions

View File

@ -1,5 +1,5 @@
/** /**
* BasicHttpClient.ino * BasicHTTPClient.ino
* *
* Created on: 24.05.2015 * Created on: 24.05.2015
* *
@ -10,7 +10,7 @@
#include <ESP8266WiFi.h> #include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h> #include <ESP8266WiFiMulti.h>
#include <ESP8266httpClient.h> #include <ESP8266HTTPClient.h>
#define USE_SERIAL Serial #define USE_SERIAL Serial
@ -39,7 +39,7 @@ void loop() {
// wait for WiFi connection // wait for WiFi connection
if((WiFiMulti.run() == WL_CONNECTED)) { if((WiFiMulti.run() == WL_CONNECTED)) {
httpClient http; HTTPClient http;
USE_SERIAL.print("[HTTP] begin...\n"); USE_SERIAL.print("[HTTP] begin...\n");
// configure traged server and url // configure traged server and url

View File

@ -11,13 +11,13 @@
#include <ESP8266WiFi.h> #include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h> #include <ESP8266WiFiMulti.h>
#include <ESP8266httpClient.h> #include <ESP8266HTTPClient.h>
#define USE_SERIAL Serial #define USE_SERIAL Serial
ESP8266WiFiMulti WiFiMulti; ESP8266WiFiMulti WiFiMulti;
httpClient http; HTTPClient http;
void setup() { void setup() {

View File

@ -1,5 +1,5 @@
/** /**
* StreamHttpClient.ino * StreamHTTPClient.ino
* *
* Created on: 24.05.2015 * Created on: 24.05.2015
* *
@ -10,7 +10,7 @@
#include <ESP8266WiFi.h> #include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h> #include <ESP8266WiFiMulti.h>
#include <ESP8266httpClient.h> #include <ESP8266HTTPClient.h>
#define USE_SERIAL Serial #define USE_SERIAL Serial
@ -39,7 +39,7 @@ void loop() {
// wait for WiFi connection // wait for WiFi connection
if((WiFiMulti.run() == WL_CONNECTED)) { if((WiFiMulti.run() == WL_CONNECTED)) {
httpClient http; HTTPClient http;
USE_SERIAL.print("[HTTP] begin...\n"); USE_SERIAL.print("[HTTP] begin...\n");
// configure traged server and url // configure traged server and url

View File

@ -1,9 +1,9 @@
name=ESP8266httpClient name=ESP8266HTTPClient
version=1.0 version=1.0
author=Markus Sattler author=Markus Sattler
maintainer=Markus Sattler maintainer=Markus Sattler
sentence=http Client for ESP8266 sentence=http Client for ESP8266
paragraph= paragraph=
category=Communication category=Communication
url=https://github.com/Links2004/Arduino/tree/libraries/ESP8266httpClient url=https://github.com/Links2004/Arduino/tree/libraries/ESP8266HTTPClient
architectures=esp8266 architectures=esp8266

View File

@ -1,10 +1,10 @@
/** /**
* ESP8266httpClient.cpp * ESP8266HTTPClient.cpp
* *
* Created on: 02.11.2015 * Created on: 02.11.2015
* *
* Copyright (c) 2015 Markus Sattler. All rights reserved. * Copyright (c) 2015 Markus Sattler. All rights reserved.
* This file is part of the ESP8266httpClient for Arduino. * This file is part of the ESP8266HTTPClient for Arduino.
* *
* This library is free software; you can redistribute it and/or * This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public * modify it under the terms of the GNU Lesser General Public
@ -27,12 +27,12 @@
#include <WiFiClientSecure.h> #include <WiFiClientSecure.h>
#include <StreamString.h> #include <StreamString.h>
#include "ESP8266httpClient.h" #include "ESP8266HTTPClient.h"
/** /**
* constractor * constractor
*/ */
httpClient::httpClient() { HTTPClient::HTTPClient() {
_tcp = NULL; _tcp = NULL;
_tcps = NULL; _tcps = NULL;
@ -41,7 +41,7 @@ httpClient::httpClient() {
_reuse = false; _reuse = false;
_https = false; _https = false;
_userAgent = "ESP8266httpClient"; _userAgent = "ESP8266HTTPClient";
_headerKeysCount = 0; _headerKeysCount = 0;
_currentHeaders = NULL; _currentHeaders = NULL;
@ -55,7 +55,7 @@ httpClient::httpClient() {
/** /**
* deconstractor * deconstractor
*/ */
httpClient::~httpClient() { HTTPClient::~HTTPClient() {
if(_tcps) { if(_tcps) {
_tcps->stop(); _tcps->stop();
@ -78,7 +78,7 @@ httpClient::~httpClient() {
* @param url const char * * @param url const char *
* @param httpsFingerprint const char * * @param httpsFingerprint const char *
*/ */
void httpClient::begin(const char *url, const char * httpsFingerprint) { void HTTPClient::begin(const char *url, const char * httpsFingerprint) {
begin(String(url), String(httpsFingerprint)); begin(String(url), String(httpsFingerprint));
} }
@ -87,7 +87,7 @@ void httpClient::begin(const char *url, const char * httpsFingerprint) {
* @param url String * @param url String
* @param httpsFingerprint String * @param httpsFingerprint String
*/ */
void httpClient::begin(String url, String httpsFingerprint) { void HTTPClient::begin(String url, String httpsFingerprint) {
DEBUG_HTTPCLIENT("[HTTP-Client][begin] url: %s\n", url.c_str()); DEBUG_HTTPCLIENT("[HTTP-Client][begin] url: %s\n", url.c_str());
@ -153,7 +153,7 @@ void httpClient::begin(String url, String httpsFingerprint) {
* @param https bool * @param https bool
* @param httpsFingerprint const char * * @param httpsFingerprint const char *
*/ */
void httpClient::begin(const char *host, uint16_t port, const char * url, bool https, const char * httpsFingerprint) { void HTTPClient::begin(const char *host, uint16_t port, const char * url, bool https, const char * httpsFingerprint) {
DEBUG_HTTPCLIENT("[HTTP-Client][begin] host: %s port:%d url: %s https: %d httpsFingerprint: %s\n", host, port, url, https, httpsFingerprint); DEBUG_HTTPCLIENT("[HTTP-Client][begin] host: %s port:%d url: %s https: %d httpsFingerprint: %s\n", host, port, url, https, httpsFingerprint);
@ -170,7 +170,7 @@ void httpClient::begin(const char *host, uint16_t port, const char * url, bool h
} }
void httpClient::begin(String host, uint16_t port, String url, bool https, String httpsFingerprint) { void HTTPClient::begin(String host, uint16_t port, String url, bool https, String httpsFingerprint) {
begin(host.c_str(), port, url.c_str(), https, httpsFingerprint.c_str()); begin(host.c_str(), port, url.c_str(), https, httpsFingerprint.c_str());
} }
@ -178,7 +178,7 @@ void httpClient::begin(String host, uint16_t port, String url, bool https, Strin
* end * end
* called after the payload is handled * called after the payload is handled
*/ */
void httpClient::end(void) { void HTTPClient::end(void) {
if(connected()) { if(connected()) {
if(_reuse && _canReuse) { if(_reuse && _canReuse) {
DEBUG_HTTPCLIENT("[HTTP-Client][end] tcp keep open for reuse\n"); DEBUG_HTTPCLIENT("[HTTP-Client][end] tcp keep open for reuse\n");
@ -195,7 +195,7 @@ void httpClient::end(void) {
* connected * connected
* @return connected status * @return connected status
*/ */
bool httpClient::connected() { bool HTTPClient::connected() {
if(_tcp) { if(_tcp) {
return (_tcp->connected() || (_tcp->available() > 0)); return (_tcp->connected() || (_tcp->available() > 0));
} }
@ -207,7 +207,7 @@ bool httpClient::connected() {
* keep-alive * keep-alive
* @param reuse bool * @param reuse bool
*/ */
void httpClient::setReuse(bool reuse) { void HTTPClient::setReuse(bool reuse) {
_reuse = reuse; _reuse = reuse;
} }
@ -215,7 +215,7 @@ void httpClient::setReuse(bool reuse) {
* set User Agent * set User Agent
* @param userAgent const char * * @param userAgent const char *
*/ */
void httpClient::setUserAgent(const char * userAgent) { void HTTPClient::setUserAgent(const char * userAgent) {
_userAgent = userAgent; _userAgent = userAgent;
} }
@ -223,7 +223,7 @@ void httpClient::setUserAgent(const char * userAgent) {
* send a GET request * send a GET request
* @return http code * @return http code
*/ */
int httpClient::GET() { int HTTPClient::GET() {
return sendRequest("GET"); return sendRequest("GET");
} }
@ -233,11 +233,11 @@ int httpClient::GET() {
* @param size size_t * @param size size_t
* @return http code * @return http code
*/ */
int httpClient::POST(uint8_t * payload, size_t size) { int HTTPClient::POST(uint8_t * payload, size_t size) {
return sendRequest("POST", payload, size); return sendRequest("POST", payload, size);
} }
int httpClient::POST(String payload) { int HTTPClient::POST(String payload) {
return POST((uint8_t *) payload.c_str(), payload.length()); return POST((uint8_t *) payload.c_str(), payload.length());
} }
@ -248,7 +248,7 @@ int httpClient::POST(String payload) {
* @param size size_t size for the message body if 0 not send * @param size size_t size for the message body if 0 not send
* @return -1 if no info or > 0 when Content-Length is set by server * @return -1 if no info or > 0 when Content-Length is set by server
*/ */
int httpClient::sendRequest(const char * type, uint8_t * payload, size_t size) { int HTTPClient::sendRequest(const char * type, uint8_t * payload, size_t size) {
// connect to server // connect to server
if(!connect()) { if(!connect()) {
return HTTPC_ERROR_CONNECTION_REFUSED; return HTTPC_ERROR_CONNECTION_REFUSED;
@ -281,7 +281,7 @@ int httpClient::sendRequest(const char * type, uint8_t * payload, size_t size) {
* @param size size_t size for the message body if 0 not Content-Length is send * @param size size_t size for the message body if 0 not Content-Length is send
* @return -1 if no info or > 0 when Content-Length is set by server * @return -1 if no info or > 0 when Content-Length is set by server
*/ */
int httpClient::sendRequest(const char * type, Stream * stream, size_t size) { int HTTPClient::sendRequest(const char * type, Stream * stream, size_t size) {
if(!stream) { if(!stream) {
return HTTPC_ERROR_NO_STREAM; return HTTPC_ERROR_NO_STREAM;
@ -349,7 +349,7 @@ int httpClient::sendRequest(const char * type, Stream * stream, size_t size) {
* size of message body / payload * size of message body / payload
* @return -1 if no info or > 0 when Content-Length is set by server * @return -1 if no info or > 0 when Content-Length is set by server
*/ */
int httpClient::getSize(void) { int HTTPClient::getSize(void) {
return _size; return _size;
} }
@ -358,7 +358,7 @@ int httpClient::getSize(void) {
* returns the stream of the tcp connection * returns the stream of the tcp connection
* @return WiFiClient * @return WiFiClient
*/ */
WiFiClient & httpClient::getStream(void) { WiFiClient & HTTPClient::getStream(void) {
if(connected()) { if(connected()) {
return *_tcp; return *_tcp;
} }
@ -372,7 +372,7 @@ WiFiClient & httpClient::getStream(void) {
* returns the stream of the tcp connection * returns the stream of the tcp connection
* @return WiFiClient * * @return WiFiClient *
*/ */
WiFiClient * httpClient::getStreamPtr(void) { WiFiClient * HTTPClient::getStreamPtr(void) {
if(connected()) { if(connected()) {
return _tcp; return _tcp;
} }
@ -386,7 +386,7 @@ WiFiClient * httpClient::getStreamPtr(void) {
* @param stream Stream * * @param stream Stream *
* @return bytes written ( negative values are error codes ) * @return bytes written ( negative values are error codes )
*/ */
int httpClient::writeToStream(Stream * stream) { int HTTPClient::writeToStream(Stream * stream) {
if(!stream) { if(!stream) {
return HTTPC_ERROR_NO_STREAM; return HTTPC_ERROR_NO_STREAM;
@ -439,7 +439,7 @@ int httpClient::writeToStream(Stream * stream) {
* return all payload as String (may need lot of ram or trigger out of memory!) * return all payload as String (may need lot of ram or trigger out of memory!)
* @return String * @return String
*/ */
String httpClient::getString(void) { String HTTPClient::getString(void) {
StreamString sstring; StreamString sstring;
if(_size) { if(_size) {
@ -460,7 +460,7 @@ String httpClient::getString(void) {
* @param value * @param value
* @param first * @param first
*/ */
void httpClient::addHeader(const String& name, const String& value, bool first) { void HTTPClient::addHeader(const String& name, const String& value, bool first) {
// not allow set of Header handled by code // not allow set of Header handled by code
if(!name.equalsIgnoreCase("Connection") && !name.equalsIgnoreCase("User-Agent") && !name.equalsIgnoreCase("Host")) { if(!name.equalsIgnoreCase("Connection") && !name.equalsIgnoreCase("User-Agent") && !name.equalsIgnoreCase("Host")) {
@ -478,7 +478,7 @@ void httpClient::addHeader(const String& name, const String& value, bool first)
} }
void httpClient::collectHeaders(const char* headerKeys[], const size_t headerKeysCount) { void HTTPClient::collectHeaders(const char* headerKeys[], const size_t headerKeysCount) {
_headerKeysCount = headerKeysCount; _headerKeysCount = headerKeysCount;
if(_currentHeaders) if(_currentHeaders)
delete[] _currentHeaders; delete[] _currentHeaders;
@ -488,7 +488,7 @@ void httpClient::collectHeaders(const char* headerKeys[], const size_t headerKey
} }
} }
String httpClient::header(const char* name) { String HTTPClient::header(const char* name) {
for(size_t i = 0; i < _headerKeysCount; ++i) { for(size_t i = 0; i < _headerKeysCount; ++i) {
if(_currentHeaders[i].key == name) if(_currentHeaders[i].key == name)
return _currentHeaders[i].value; return _currentHeaders[i].value;
@ -496,23 +496,23 @@ String httpClient::header(const char* name) {
return String(); return String();
} }
String httpClient::header(size_t i) { String HTTPClient::header(size_t i) {
if(i < _headerKeysCount) if(i < _headerKeysCount)
return _currentHeaders[i].value; return _currentHeaders[i].value;
return String(); return String();
} }
String httpClient::headerName(size_t i) { String HTTPClient::headerName(size_t i) {
if(i < _headerKeysCount) if(i < _headerKeysCount)
return _currentHeaders[i].key; return _currentHeaders[i].key;
return String(); return String();
} }
int httpClient::headers() { int HTTPClient::headers() {
return _headerKeysCount; return _headerKeysCount;
} }
bool httpClient::hasHeader(const char* name) { bool HTTPClient::hasHeader(const char* name) {
for(size_t i = 0; i < _headerKeysCount; ++i) { for(size_t i = 0; i < _headerKeysCount; ++i) {
if((_currentHeaders[i].key == name) && (_currentHeaders[i].value.length() > 0)) if((_currentHeaders[i].key == name) && (_currentHeaders[i].value.length() > 0))
return true; return true;
@ -524,7 +524,7 @@ bool httpClient::hasHeader(const char* name) {
* init TCP connection and handle ssl verify if needed * init TCP connection and handle ssl verify if needed
* @return true if connection is ok * @return true if connection is ok
*/ */
bool httpClient::connect(void) { bool HTTPClient::connect(void) {
if(connected()) { if(connected()) {
DEBUG_HTTPCLIENT("[HTTP-Client] connect. already connected, try reuse!\n"); DEBUG_HTTPCLIENT("[HTTP-Client] connect. already connected, try reuse!\n");
@ -567,7 +567,7 @@ bool httpClient::connect(void) {
} }
// set Timeout for readBytesUntil and readStringUntil // set Timeout for readBytesUntil and readStringUntil
_tcp->setTimeout(HTTPCLIENT_TCP_TIMEOUT); _tcp->setTimeout(HTTPClient_TCP_TIMEOUT);
#ifdef ESP8266 #ifdef ESP8266
_tcp->setNoDelay(true); _tcp->setNoDelay(true);
@ -580,7 +580,7 @@ bool httpClient::connect(void) {
* @param type (GET, POST, ...) * @param type (GET, POST, ...)
* @return status * @return status
*/ */
bool httpClient::sendHeader(const char * type) { bool HTTPClient::sendHeader(const char * type) {
if(!connected()) { if(!connected()) {
return false; return false;
} }
@ -604,7 +604,7 @@ bool httpClient::sendHeader(const char * type) {
* reads the response from the server * reads the response from the server
* @return int http code * @return int http code
*/ */
int httpClient::handleHeaderResponse() { int HTTPClient::handleHeaderResponse() {
if(!connected()) { if(!connected()) {
return HTTPC_ERROR_NOT_CONNECTED; return HTTPC_ERROR_NOT_CONNECTED;

View File

@ -1,10 +1,10 @@
/** /**
* ESP8266httpClient.h * ESP8266HTTPClient.h
* *
* Created on: 02.11.2015 * Created on: 02.11.2015
* *
* Copyright (c) 2015 Markus Sattler. All rights reserved. * Copyright (c) 2015 Markus Sattler. All rights reserved.
* This file is part of the ESP8266httpClient for Arduino. * This file is part of the ESP8266HTTPClient for Arduino.
* *
* This library is free software; you can redistribute it and/or * This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public * modify it under the terms of the GNU Lesser General Public
@ -22,16 +22,16 @@
* *
*/ */
#ifndef ESP8266HTTPCLIENT_H_ #ifndef ESP8266HTTPClient_H_
#define ESP8266HTTPCLIENT_H_ #define ESP8266HTTPClient_H_
//#define DEBUG_HTTPCLIENT(...) Serial1.printf( __VA_ARGS__ ) //#define DEBUG_HTTPClient(...) Serial1.printf( __VA_ARGS__ )
#ifndef DEBUG_HTTPCLIENT #ifndef DEBUG_HTTPClient
#define DEBUG_HTTPCLIENT(...) #define DEBUG_HTTPClient(...)
#endif #endif
#define HTTPCLIENT_TCP_TIMEOUT (1000) #define HTTPClient_TCP_TIMEOUT (1000)
/// HTTP client errors /// HTTP client errors
#define HTTPC_ERROR_CONNECTION_REFUSED (-1) #define HTTPC_ERROR_CONNECTION_REFUSED (-1)
@ -43,10 +43,10 @@
#define HTTPC_ERROR_NO_HTTP_SERVER (-7) #define HTTPC_ERROR_NO_HTTP_SERVER (-7)
class httpClient { class HTTPClient {
public: public:
httpClient(); HTTPClient();
~httpClient(); ~HTTPClient();
void begin(const char *url, const char * httpsFingerprint = ""); void begin(const char *url, const char * httpsFingerprint = "");
void begin(String url, String httpsFingerprint = ""); void begin(String url, String httpsFingerprint = "");
@ -126,4 +126,4 @@ class httpClient {
#endif /* ESP8266HTTPCLIENT_H_ */ #endif /* ESP8266HTTPClient_H_ */

View File

@ -10,7 +10,7 @@
#include <ESP8266WiFi.h> #include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h> #include <ESP8266WiFiMulti.h>
#include <ESP8266httpClient.h> #include <ESP8266HTTPClient.h>
#include <ESP8266httpUpdate.h> #include <ESP8266httpUpdate.h>
#define USE_SERIAL Serial #define USE_SERIAL Serial

View File

@ -41,7 +41,7 @@ ESP8266HTTPUpdate::~ESP8266HTTPUpdate(void) {
* @return t_httpUpdate_return * @return t_httpUpdate_return
*/ */
t_httpUpdate_return ESP8266HTTPUpdate::update(const char * url, const char * current_version, const char * httpsFingerprint) { t_httpUpdate_return ESP8266HTTPUpdate::update(const char * url, const char * current_version, const char * httpsFingerprint) {
httpClient http; HTTPClient http;
http.begin(url, httpsFingerprint); http.begin(url, httpsFingerprint);
return handleUpdate(&http, current_version); return handleUpdate(&http, current_version);
} }
@ -56,24 +56,24 @@ t_httpUpdate_return ESP8266HTTPUpdate::update(const char * url, const char * cur
* @return * @return
*/ */
t_httpUpdate_return ESP8266HTTPUpdate::update(const char * host, uint16_t port, const char * url, const char * current_version, bool https, const char * httpsFingerprint) { t_httpUpdate_return ESP8266HTTPUpdate::update(const char * host, uint16_t port, const char * url, const char * current_version, bool https, const char * httpsFingerprint) {
httpClient http; HTTPClient http;
http.begin(host, port, url, https, httpsFingerprint); http.begin(host, port, url, https, httpsFingerprint);
return handleUpdate(&http, current_version); return handleUpdate(&http, current_version);
} }
t_httpUpdate_return ESP8266HTTPUpdate::update(String host, uint16_t port, String url, String current_version, bool https, String httpsFingerprint) { t_httpUpdate_return ESP8266HTTPUpdate::update(String host, uint16_t port, String url, String current_version, bool https, String httpsFingerprint) {
httpClient http; HTTPClient http;
http.begin(host, port, url, https, httpsFingerprint); http.begin(host, port, url, https, httpsFingerprint);
return handleUpdate(&http, current_version.c_str()); return handleUpdate(&http, current_version.c_str());
} }
/** /**
* *
* @param http httpClient * * @param http HTTPClient *
* @param current_version const char * * @param current_version const char *
* @return t_httpUpdate_return * @return t_httpUpdate_return
*/ */
t_httpUpdate_return ESP8266HTTPUpdate::handleUpdate(httpClient * http, const char * current_version) { t_httpUpdate_return ESP8266HTTPUpdate::handleUpdate(HTTPClient * http, const char * current_version) {
t_httpUpdate_return ret = HTTP_UPDATE_FAILED; t_httpUpdate_return ret = HTTP_UPDATE_FAILED;

View File

@ -30,7 +30,7 @@
#include <ESP8266WiFi.h> #include <ESP8266WiFi.h>
#include <WiFiClient.h> #include <WiFiClient.h>
#include <WiFiUdp.h> #include <WiFiUdp.h>
#include <ESP8266httpClient.h> #include <ESP8266HTTPClient.h>
//#define DEBUG_HTTP_UPDATE(...) Serial1.printf( __VA_ARGS__ ) //#define DEBUG_HTTP_UPDATE(...) Serial1.printf( __VA_ARGS__ )
@ -54,7 +54,7 @@ class ESP8266HTTPUpdate {
t_httpUpdate_return update(String host, uint16_t port, String url = "/", String current_version = "", bool https = false, String httpsFingerprint = ""); t_httpUpdate_return update(String host, uint16_t port, String url = "/", String current_version = "", bool https = false, String httpsFingerprint = "");
protected: protected:
t_httpUpdate_return handleUpdate(httpClient * http, const char * current_version); t_httpUpdate_return handleUpdate(HTTPClient * http, const char * current_version);
bool runUpdate(Stream& in, uint32_t size, String md5); bool runUpdate(Stream& in, uint32_t size, String md5);
}; };