Skocz do zawartości

Zmiana funkcji na wysyłanie przez httpCliemt.PATCH


Pomocna odpowiedź

@jand nie tylko 200, ogólnie 2xx (a w pewnych przypadkach 1xx i 3xx). Akurat w tym przypadku prawidłowa odpowiedź to 202 (czyli serweŕ odebrał dane i będzie coś z nimi robił, ale danych nie musi zwracać bo ich jeszcze nie ma).

  • Pomogłeś! 1
(edytowany)

Tak pisałem o case, czyli switch-case;)

Ok, argumenty do mnie trafiają, jeśli z jakichś powodów, nie wyszło, to można na to zareagować. 

Dla PATCH otrzymuję code 202. Zdaje się jest ok, tym bardziej, że wszystko działa dokładnie tak jak powinno.

Ostatnia kwestia dotycząca tej funkcji.

client1.stop();
http1.end();

Czy zamykać połączenia? Kiedy tak, a kiedy nie? Czy wystarczy tylko http1.end?

Edytowano przez SOYER
void httpPOSTsupla() {
	WiFiClientSecure client1;
	HTTPClient http1;
	
	/* ... */
	
	client1.stop();
	http1.end();
}

Tworzysz obiekty lokalne wewnątrz httpPOSTsupla(), których destruktory prawdopodobnie "sprzątają po cichu" zarezerwowane zasoby podczas opuszczania funkcji, między innymi wywołując metody stop() i end(). Jednak takiej pewności nigdy nie masz, dlatego sprawdź kod źródłowy klas, tj. co zawiera "WiFiClientSecure::~WiFiClientSecure()" z pliku "WiFiClientSecure.cpp" i "HTTPClient::~HTTPClient()" z pliku "HTTPClient.cpp". Jawne wywołanie metody jest czytelniejsze, jeżeli tak podają w przykładach, to tak rób. Sprawa ma się trochę inaczej podczas tworzenia obiektów globalnych, wtedy musiałbyś pewnie uporządkować je sam, żeby użyć ponownie.

Trafiłem ostatnio na książkę "Opus magnum c++" (kontynuacja "Symfonia c++", którą czytałem kiedyś), gdzie masz opisane klasy, konstruktory, destruktory itd. Po "kilku" latach przerwy od c++ (pewnie bliżej dekady) też sporo zapomniałem jako amator. Czas trochę odkurzyć temat, hehe.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...