esp8266 Digest авторизация как не прерывать сессию
- Войдите на сайт для отправки комментариев
Чт, 02/04/2020 - 23:10
Попробовал пример который был в архиве, Digest авторизация на сайт, все отлично работает, только при каждом отсылки данных приходится авторизоваться, это нормально? можно как то поддерживать авторизацию и просто отправлять данные? Вот код отправики, функции для шифрования тут не привожу, не пойму какую часть кода использовать для отправки запроса без авторизации и чтобы она не срывалась.
void SendData()
{
WiFiClient client;
HTTPClient http;
Serial.print("[HTTP] begin...\n");
// configure traged server and url
http.begin(client, String(server) + String(url));
const char *keys[] = {"WWW-Authenticate"};
http.collectHeaders(keys, 1);
Serial.print("[HTTP] GET...\n");
// start connection and send HTTP header
int httpCode = http.GET();
if (httpCode > 0)
{
String authReq = http.header("WWW-Authenticate");
//Serial.println(authReq);
String authorization = getDigestAuth(authReq, username, password, String(url), 1);
http.end();
http.begin(client, String(server) + String(url));
http.addHeader("Authorization", authorization);
int httpCode = http.GET();
if (httpCode > 0)
{
String payload = http.getString();
Serial.println(payload);
}
else
{
Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
}
}
else
{
Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
}
http.end();
}
Ну и будешь вместо авторизации точно так же отправлять ключ сессии.
вот я и спрашиваю как это сделать