patriot_red_ru
New member
Пытаюсь зарегистрировать плату на специальном сервере.
Для этого использую POST запрос.
Пример как должен выглядеть запрос:
Код на Lua который я использую:
Сервер возвращает:
400 - не правильное оформление запроса
Было испытано большое количество вариантов оформления запросов...
Как правильно оформить запрос?
Что не так?
Для этого использую POST запрос.
Пример как должен выглядеть запрос:
Код:
POST /auth/esp/register HTTP/1.1
Host: myhost
Content-Type: application/json
Cache-Control: no-cache
{"ESPIdentifier": "000:111:222:333:444"}
Код на Lua который я использую:
Код:
#include <Arduino.h>
#include <WiFi.h>
#include <HTTPClient.h>
const char* ssid = "SSID";
const char* password = "Pass_wifi";
const char* host = "myhost";
const int httpsPort = 443;
void setup() {
Serial.begin(115200);
Serial.print("connecting to ");
Serial.println(ssid);
Serial.println();
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
Serial.println();
Serial.print("MAC: ");
Serial.println(WiFi.macAddress());
Serial.print("connecting to ");
Serial.println(host);
//Провека работы сервера
if (!client.connect(host, httpsPort)) {
Serial.println("connection failed");
}
else
{
Serial.println("OK");
}
while (WiFi.status() != WL_CONNECTED)
delay(500);
Serial.println("Waiting for connection...");
if(WiFi.status()== WL_CONNECTED){ //Проверка соединения wifi
HTTPClient http;
http.begin("ССЫЛКА НА РЕГИСРАЦИЮ");
http.addHeader("Host", "myhost");
http.addHeader("Content-Type", "application/json");
http.writeToStream(&Serial);
http.end();
int httpResponseCode = http.POST("POST /auth/esp/register HTTP/1.1\r\n{\"ESPIdentifier\": \"000:123:265:312:484\"}");
if (httpResponseCode > 0) { //Возвращаемое значение
String payload = http.getString();
Serial.println(httpResponseCode);
Serial.println(payload);
}
else {
Serial.println("Error on HTTP request");
}
http.end(); //Освобождение ресурсов
}
else
{
Serial.print("Error in Wifi connection");
}
delay(30000); //Отправка запроса и проверка каждые 30 секунд
}
void loop() {
}
400 - не правильное оформление запроса
Было испытано большое количество вариантов оформления запросов...
Как правильно оформить запрос?
Что не так?