@@ -110,6 +110,7 @@ bool HTTPClient::begin(String url, const char* CAcert)
110
110
if (!beginInternal (url, " https" )) {
111
111
return false ;
112
112
}
113
+ _secure = true ;
113
114
_transportTraits = TransportTraitsPtr (new TLSTraits (CAcert));
114
115
return true ;
115
116
}
@@ -121,34 +122,30 @@ bool HTTPClient::begin(String url, const char* CAcert)
121
122
bool HTTPClient::begin (String url)
122
123
{
123
124
124
- if (beginInternal (url, " https" )) {
125
- return begin (url, (const char *)NULL );
126
- }
127
125
_transportTraits.reset (nullptr );
128
126
_port = 80 ;
129
127
if (!beginInternal (url, " http" )) {
130
- return false ;
128
+ return begin (url, ( const char *) NULL ) ;
131
129
}
132
130
_transportTraits = TransportTraitsPtr (new TransportTraits ());
133
131
return true ;
134
132
}
135
133
136
134
bool HTTPClient::beginInternal (String url, const char * expectedProtocol)
137
135
{
138
- log_d (" [HTTP-Client][begin] url: %s" , url.c_str ());
139
- bool hasPort = false ;
136
+ log_v (" url: %s" , url.c_str ());
140
137
clear ();
141
138
142
139
// check for : (http: or https:
143
140
int index = url.indexOf (' :' );
144
141
if (index < 0 ) {
145
- log_d ( " [HTTP-Client][begin] failed to parse protocol" );
142
+ log_e ( " failed to parse protocol" );
146
143
return false ;
147
144
}
148
145
149
146
_protocol = url.substring (0 , index );
150
147
if (_protocol != expectedProtocol) {
151
- log_d ( " [HTTP-Client][begin] unexpected protocol: %s, expected %s" , _protocol.c_str (), expectedProtocol);
148
+ log_w ( " unexpected protocol: %s, expected %s" , _protocol.c_str (), expectedProtocol);
152
149
return false ;
153
150
}
154
151
@@ -177,7 +174,7 @@ bool HTTPClient::beginInternal(String url, const char* expectedProtocol)
177
174
_host = host;
178
175
}
179
176
_uri = url;
180
- log_d (" [HTTP-Client][begin] host: %s port: %d url: %s" , _host.c_str (), _port, _uri.c_str ());
177
+ log_d (" host: %s port: %d url: %s" , _host.c_str (), _port, _uri.c_str ());
181
178
return true ;
182
179
}
183
180
@@ -188,7 +185,7 @@ bool HTTPClient::begin(String host, uint16_t port, String uri)
188
185
_port = port;
189
186
_uri = uri;
190
187
_transportTraits = TransportTraitsPtr (new TransportTraits ());
191
- log_d (" [HTTP-Client][begin] host: %s port: %d uri: %s" , host.c_str (), port, uri.c_str ());
188
+ log_d (" host: %s port: %d uri: %s" , host.c_str (), port, uri.c_str ());
192
189
return true ;
193
190
}
194
191
@@ -203,7 +200,6 @@ bool HTTPClient::begin(String host, uint16_t port, String uri, const char* CAcer
203
200
return false ;
204
201
}
205
202
_transportTraits = TransportTraitsPtr (new TLSTraits (CAcert));
206
- // log_d("[HTTP-Client][begin] host: %s port: %d url: %s httpsFingerprint: %s", host.c_str(), port, uri.c_str(), httpsFingerprint.c_str());
207
203
return true ;
208
204
}
209
205
@@ -215,19 +211,19 @@ void HTTPClient::end(void)
215
211
{
216
212
if (connected ()) {
217
213
if (_tcp->available () > 0 ) {
218
- log_d (" [HTTP-Client][end] still data in buffer (%d), clean up." , _tcp->available ());
214
+ log_d (" still data in buffer (%d), clean up." , _tcp->available ());
219
215
while (_tcp->available () > 0 ) {
220
216
_tcp->read ();
221
217
}
222
218
}
223
219
if (_reuse && _canReuse) {
224
- log_d (" [HTTP-Client][end] tcp keep open for reuse" );
220
+ log_d (" tcp keep open for reuse" );
225
221
} else {
226
- log_d (" [HTTP-Client][end] tcp stop" );
222
+ log_d (" tcp stop" );
227
223
_tcp->stop ();
228
224
}
229
225
} else {
230
- log_d ( " [HTTP-Client][end] tcp is closed" );
226
+ log_v ( " tcp is closed" );
231
227
}
232
228
}
233
229
@@ -295,7 +291,7 @@ void HTTPClient::setAuthorization(const char * auth)
295
291
void HTTPClient::setTimeout (uint16_t timeout)
296
292
{
297
293
_tcpTimeout = timeout;
298
- if (connected ()) {
294
+ if (connected () && !_secure ) {
299
295
_tcp->setTimeout (timeout);
300
296
}
301
297
}
@@ -468,11 +464,11 @@ int HTTPClient::sendRequest(const char * type, Stream * stream, size_t size)
468
464
469
465
// are all Bytes a writen to stream ?
470
466
if (bytesWrite != bytesRead) {
471
- log_d (" [HTTP-Client][sendRequest] short write, asked for %d but got %d retry..." , bytesRead, bytesWrite);
467
+ log_d (" short write, asked for %d but got %d retry..." , bytesRead, bytesWrite);
472
468
473
469
// check for write error
474
470
if (_tcp->getWriteError ()) {
475
- log_d (" [HTTP-Client][sendRequest] stream write error %d" , _tcp->getWriteError ());
471
+ log_d (" stream write error %d" , _tcp->getWriteError ());
476
472
477
473
// reset write error for retry
478
474
_tcp->clearWriteError ();
@@ -489,15 +485,15 @@ int HTTPClient::sendRequest(const char * type, Stream * stream, size_t size)
489
485
490
486
if (bytesWrite != leftBytes) {
491
487
// failed again
492
- log_d (" [HTTP-Client][sendRequest] short write, asked for %d but got %d failed." , leftBytes, bytesWrite);
488
+ log_d (" short write, asked for %d but got %d failed." , leftBytes, bytesWrite);
493
489
free (buff);
494
490
return returnError (HTTPC_ERROR_SEND_PAYLOAD_FAILED);
495
491
}
496
492
}
497
493
498
494
// check for write error
499
495
if (_tcp->getWriteError ()) {
500
- log_d (" [HTTP-Client][sendRequest] stream write error %d" , _tcp->getWriteError ());
496
+ log_d (" stream write error %d" , _tcp->getWriteError ());
501
497
free (buff);
502
498
return returnError (HTTPC_ERROR_SEND_PAYLOAD_FAILED);
503
499
}
@@ -516,15 +512,15 @@ int HTTPClient::sendRequest(const char * type, Stream * stream, size_t size)
516
512
free (buff);
517
513
518
514
if (size && (int ) size != bytesWritten) {
519
- log_d (" [HTTP-Client][sendRequest] Stream payload bytesWritten %d and size %d mismatch!." , bytesWritten, size);
520
- log_d (" [HTTP-Client][sendRequest] ERROR SEND PAYLOAD FAILED!" );
515
+ log_d (" Stream payload bytesWritten %d and size %d mismatch!." , bytesWritten, size);
516
+ log_d (" ERROR SEND PAYLOAD FAILED!" );
521
517
return returnError (HTTPC_ERROR_SEND_PAYLOAD_FAILED);
522
518
} else {
523
- log_d (" [HTTP-Client][sendRequest] Stream payload written: %d" , bytesWritten);
519
+ log_d (" Stream payload written: %d" , bytesWritten);
524
520
}
525
521
526
522
} else {
527
- log_d (" [HTTP-Client][sendRequest] too less ram! need %d" , HTTP_TCP_BUFFER_SIZE);
523
+ log_d (" too less ram! need %d" , HTTP_TCP_BUFFER_SIZE);
528
524
return returnError (HTTPC_ERROR_TOO_LESS_RAM);
529
525
}
530
526
@@ -551,7 +547,7 @@ WiFiClient& HTTPClient::getStream(void)
551
547
return *_tcp;
552
548
}
553
549
554
- log_d (" [HTTP-Client] getStream: not connected" );
550
+ log_d (" getStream: not connected" );
555
551
static WiFiClient empty;
556
552
return empty;
557
553
}
@@ -566,7 +562,7 @@ WiFiClient* HTTPClient::getStreamPtr(void)
566
562
return _tcp.get ();
567
563
}
568
564
569
- log_d (" [HTTP-Client] getStreamPtr: not connected" );
565
+ log_d (" getStreamPtr: not connected" );
570
566
return nullptr ;
571
567
}
572
568
@@ -614,7 +610,7 @@ int HTTPClient::writeToStream(Stream * stream)
614
610
// read size of chunk
615
611
len = (uint32_t ) strtol ((const char *) chunkHeader.c_str (), NULL , 16 );
616
612
size += len;
617
- log_d (" [HTTP-Client] read chunk len: %d" , len);
613
+ log_d (" read chunk len: %d" , len);
618
614
619
615
// data left?
620
616
if (len > 0 ) {
@@ -666,7 +662,7 @@ String HTTPClient::getString(void)
666
662
if (_size) {
667
663
// try to reserve needed memmory
668
664
if (!sstring.reserve ((_size + 1 ))) {
669
- log_d (" [HTTP-Client][getString] not enough memory to reserve a string! need: %d" , (_size + 1 ));
665
+ log_d (" not enough memory to reserve a string! need: %d" , (_size + 1 ));
670
666
return " " ;
671
667
}
672
668
}
@@ -807,36 +803,36 @@ bool HTTPClient::connect(void)
807
803
{
808
804
809
805
if (connected ()) {
810
- log_d (" [HTTP-Client] connect. already connected, try reuse!" );
806
+ log_d (" already connected, try reuse!" );
811
807
while (_tcp->available () > 0 ) {
812
808
_tcp->read ();
813
809
}
814
810
return true ;
815
811
}
816
812
817
813
if (!_transportTraits) {
818
- log_d (" [HTTP-Client] connect: HTTPClient::begin was not called or returned error" );
814
+ log_d (" HTTPClient::begin was not called or returned error" );
819
815
return false ;
820
816
}
821
817
822
818
_tcp = _transportTraits->create ();
823
819
824
820
825
821
if (!_transportTraits->verify (*_tcp, _host.c_str ())) {
826
- log_d (" [HTTP-Client] transport level verify failed" );
822
+ log_d (" transport level verify failed" );
827
823
_tcp->stop ();
828
824
return false ;
829
825
}
830
826
831
827
if (!_tcp->connect (_host.c_str (), _port)) {
832
- log_d (" [HTTP-Client] failed connect to %s:%u" , _host.c_str (), _port);
828
+ log_d (" failed connect to %s:%u" , _host.c_str (), _port);
833
829
return false ;
834
830
}
835
831
836
- log_d (" [HTTP-Client] connected to %s:%u" , _host.c_str (), _port);
832
+ log_d (" connected to %s:%u" , _host.c_str (), _port);
837
833
838
834
// set Timeout for readBytesUntil and readStringUntil
839
- _tcp-> setTimeout (_tcpTimeout);
835
+ setTimeout (_tcpTimeout);
840
836
/*
841
837
#ifdef ESP8266
842
838
_tcp->setNoDelay(true);
@@ -921,7 +917,7 @@ int HTTPClient::handleHeaderResponse()
921
917
922
918
lastDataTime = millis ();
923
919
924
- log_d ( " [HTTP-Client][handleHeaderResponse] RX: '%s'" , headerLine.c_str ());
920
+ log_v ( " RX: '%s'" , headerLine.c_str ());
925
921
926
922
if (headerLine.startsWith (" HTTP/1." )) {
927
923
_returnCode = headerLine.substring (9 , headerLine.indexOf (' ' , 9 )).toInt ();
@@ -951,14 +947,14 @@ int HTTPClient::handleHeaderResponse()
951
947
}
952
948
953
949
if (headerLine == " " ) {
954
- log_d (" [HTTP-Client][handleHeaderResponse] code: %d" , _returnCode);
950
+ log_d (" code: %d" , _returnCode);
955
951
956
952
if (_size > 0 ) {
957
- log_d (" [HTTP-Client][handleHeaderResponse] size: %d" , _size);
953
+ log_d (" size: %d" , _size);
958
954
}
959
955
960
956
if (transferEncoding.length () > 0 ) {
961
- log_d (" [HTTP-Client][handleHeaderResponse] Transfer-Encoding: %s" , transferEncoding.c_str ());
957
+ log_d (" Transfer-Encoding: %s" , transferEncoding.c_str ());
962
958
if (transferEncoding.equalsIgnoreCase (" chunked" )) {
963
959
_transferEncoding = HTTPC_TE_CHUNKED;
964
960
} else {
@@ -971,7 +967,7 @@ int HTTPClient::handleHeaderResponse()
971
967
if (_returnCode) {
972
968
return _returnCode;
973
969
} else {
974
- log_d (" [HTTP-Client][handleHeaderResponse] Remote host is not an HTTP Server!" );
970
+ log_d (" Remote host is not an HTTP Server!" );
975
971
return HTTPC_ERROR_NO_HTTP_SERVER;
976
972
}
977
973
}
@@ -1037,11 +1033,11 @@ int HTTPClient::writeToStreamDataBlock(Stream * stream, int size)
1037
1033
1038
1034
// are all Bytes a writen to stream ?
1039
1035
if (bytesWrite != bytesRead) {
1040
- log_d (" [HTTP-Client][writeToStream] short write asked for %d but got %d retry..." , bytesRead, bytesWrite);
1036
+ log_d (" short write asked for %d but got %d retry..." , bytesRead, bytesWrite);
1041
1037
1042
1038
// check for write error
1043
1039
if (stream->getWriteError ()) {
1044
- log_d (" [HTTP-Client][writeToStreamDataBlock] stream write error %d" , stream->getWriteError ());
1040
+ log_d (" stream write error %d" , stream->getWriteError ());
1045
1041
1046
1042
// reset write error for retry
1047
1043
stream->clearWriteError ();
@@ -1058,15 +1054,15 @@ int HTTPClient::writeToStreamDataBlock(Stream * stream, int size)
1058
1054
1059
1055
if (bytesWrite != leftBytes) {
1060
1056
// failed again
1061
- log_d ( " [HTTP-Client][writeToStream] short write asked for %d but got %d failed." , leftBytes, bytesWrite);
1057
+ log_w ( " short write asked for %d but got %d failed." , leftBytes, bytesWrite);
1062
1058
free (buff);
1063
1059
return HTTPC_ERROR_STREAM_WRITE;
1064
1060
}
1065
1061
}
1066
1062
1067
1063
// check for write error
1068
1064
if (stream->getWriteError ()) {
1069
- log_d ( " [HTTP-Client][writeToStreamDataBlock] stream write error %d" , stream->getWriteError ());
1065
+ log_w ( " stream write error %d" , stream->getWriteError ());
1070
1066
free (buff);
1071
1067
return HTTPC_ERROR_STREAM_WRITE;
1072
1068
}
@@ -1084,15 +1080,15 @@ int HTTPClient::writeToStreamDataBlock(Stream * stream, int size)
1084
1080
1085
1081
free (buff);
1086
1082
1087
- log_d (" [HTTP-Client][writeToStreamDataBlock] connection closed or file end (written: %d)." , bytesWritten);
1083
+ log_d (" connection closed or file end (written: %d)." , bytesWritten);
1088
1084
1089
1085
if ((size > 0 ) && (size != bytesWritten)) {
1090
- log_d (" [HTTP-Client][writeToStreamDataBlock] bytesWritten %d and size %d mismatch!." , bytesWritten, size);
1086
+ log_d (" bytesWritten %d and size %d mismatch!." , bytesWritten, size);
1091
1087
return HTTPC_ERROR_STREAM_WRITE;
1092
1088
}
1093
1089
1094
1090
} else {
1095
- log_d ( " [HTTP-Client][writeToStreamDataBlock] too less ram! need %d" , HTTP_TCP_BUFFER_SIZE);
1091
+ log_w ( " too less ram! need %d" , HTTP_TCP_BUFFER_SIZE);
1096
1092
return HTTPC_ERROR_TOO_LESS_RAM;
1097
1093
}
1098
1094
@@ -1107,9 +1103,9 @@ int HTTPClient::writeToStreamDataBlock(Stream * stream, int size)
1107
1103
int HTTPClient::returnError (int error)
1108
1104
{
1109
1105
if (error < 0 ) {
1110
- log_d ( " [HTTP-Client][returnError] error(%d): %s" , error, errorToString (error).c_str ());
1106
+ log_w ( " error(%d): %s" , error, errorToString (error).c_str ());
1111
1107
if (connected ()) {
1112
- log_d (" [HTTP-Client][returnError] tcp stop" );
1108
+ log_d (" tcp stop" );
1113
1109
_tcp->stop ();
1114
1110
}
1115
1111
}
0 commit comments