@@ -256,7 +256,7 @@ void HTTPClient::setReuse(bool reuse)
256256 * set User Agent
257257 * @param userAgent const char *
258258 */
259- void HTTPClient::setUserAgent (const char * userAgent)
259+ void HTTPClient::setUserAgent (const String& userAgent)
260260{
261261 _userAgent = userAgent;
262262}
@@ -359,7 +359,7 @@ int HTTPClient::sendRequest(const char * type, uint8_t * payload, size_t size)
359359 }
360360
361361 if (payload && size > 0 ) {
362- addHeader (" Content-Length" , String (size));
362+ addHeader (F ( " Content-Length" ) , String (size));
363363 }
364364
365365 // send Header
@@ -644,8 +644,8 @@ String HTTPClient::getString(void)
644644 if (_size) {
645645 // try to reserve needed memmory
646646 if (!sstring.reserve ((_size + 1 ))) {
647- DEBUG_HTTPCLIENT (" [HTTP-Client][getString] too less memory to reserve as string! need: %d\n " , (_size + 1 ));
648- return String ( " --too less memory-- " ) ;
647+ DEBUG_HTTPCLIENT (" [HTTP-Client][getString] not enough memory to reserve a string! need: %d\n " , (_size + 1 ));
648+ return " " ;
649649 }
650650 }
651651
@@ -662,27 +662,27 @@ String HTTPClient::errorToString(int error)
662662{
663663 switch (error) {
664664 case HTTPC_ERROR_CONNECTION_REFUSED:
665- return String (" connection refused" );
665+ return F (" connection refused" );
666666 case HTTPC_ERROR_SEND_HEADER_FAILED:
667- return String (" send header failed" );
667+ return F (" send header failed" );
668668 case HTTPC_ERROR_SEND_PAYLOAD_FAILED:
669- return String (" send payload failed" );
669+ return F (" send payload failed" );
670670 case HTTPC_ERROR_NOT_CONNECTED:
671- return String (" not connected" );
671+ return F (" not connected" );
672672 case HTTPC_ERROR_CONNECTION_LOST:
673- return String (" connection lost" );
673+ return F (" connection lost" );
674674 case HTTPC_ERROR_NO_STREAM:
675- return String (" no stream" );
675+ return F (" no stream" );
676676 case HTTPC_ERROR_NO_HTTP_SERVER:
677- return String (" no HTTP server" );
677+ return F (" no HTTP server" );
678678 case HTTPC_ERROR_TOO_LESS_RAM:
679- return String (" too less ram" );
679+ return F (" too less ram" );
680680 case HTTPC_ERROR_ENCODING:
681- return String (" Transfer-Encoding not supported" );
681+ return F (" Transfer-Encoding not supported" );
682682 case HTTPC_ERROR_STREAM_WRITE:
683- return String (" Stream write error" );
683+ return F (" Stream write error" );
684684 case HTTPC_ERROR_READ_TIMEOUT:
685- return String (" read Timeout" );
685+ return F (" read Timeout" );
686686 default :
687687 return String ();
688688 }
@@ -698,7 +698,10 @@ void HTTPClient::addHeader(const String& name, const String& value, bool first)
698698{
699699
700700 // not allow set of Header handled by code
701- if (!name.equalsIgnoreCase (" Connection" ) && !name.equalsIgnoreCase (" User-Agent" ) && !name.equalsIgnoreCase (" Host" ) && !(_base64Authorization.length () && name.equalsIgnoreCase (" Authorization" ))) {
701+ if (!name.equalsIgnoreCase (F (" Connection" )) &&
702+ !name.equalsIgnoreCase (F (" User-Agent" )) &&
703+ !name.equalsIgnoreCase (F (" Host" )) &&
704+ !(name.equalsIgnoreCase (F (" Authorization" )) && _base64Authorization.length ())){
702705 String headerLine = name;
703706 headerLine += " : " ;
704707 headerLine += value;
@@ -821,32 +824,33 @@ bool HTTPClient::sendHeader(const char * type)
821824 return false ;
822825 }
823826
824- String header = String (type) + " " + _uri + " HTTP/1." ;
827+ String header = String (type) + " " + _uri + F ( " HTTP/1." ) ;
825828
826829 if (_useHTTP10) {
827830 header += " 0" ;
828831 } else {
829832 header += " 1" ;
830833 }
831834
832- header += " \r\n "
833- " Host: " + _host + " \r\n "
834- " User-Agent: " + _userAgent + " \r\n "
835- " Connection: " ;
835+ header += String (F (" \r\n Host: " )) + _host +
836+ F (" \r\n User-Agent: " ) + _userAgent +
837+ F (" \r\n Connection: " );
836838
837839 if (_reuse) {
838- header += " keep-alive" ;
840+ header += F ( " keep-alive" ) ;
839841 } else {
840- header += " close" ;
842+ header += F ( " close" ) ;
841843 }
842844 header += " \r\n " ;
843845
844846 if (!_useHTTP10) {
845- header += " Accept-Encoding: identity;q=1,chunked;q=0.1,*;q=0\r\n " ;
847+ header += F ( " Accept-Encoding: identity;q=1,chunked;q=0.1,*;q=0\r\n " ) ;
846848 }
847849
848850 if (_base64Authorization.length ()) {
849- header += " Authorization: Basic " + _base64Authorization + " \r\n " ;
851+ header += F (" Authorization: Basic " );
852+ header += _base64Authorization;
853+ header += " \r\n " ;
850854 }
851855
852856 header += _headers + " \r\n " ;
0 commit comments