ledmax писал(а):Не могу разобраться - каким образом записывать данные в лог файл на сервере? Можно через пхп скрипт на сервере, но как писать непосредственно с контроллера?
Код: Выделить всё
File test = SPIFFS.open("/sys.log", "w");
test.println("bla-bla");
test.close();
Код: Выделить всё
File test = SPIFFS.open("/sys.log", "r");
Serial.println(test.readStringUntil('\n'));
test.close();
Если удалённый, то отправлять GET или POST запросы.
Код: Выделить всё
void send_POST() {
int httpPort = 80;
char* host_server = "10.0.0.1";
if (!client.connect(host_server, httpPort)) {
Serial.println(" No connected server");
return;
}
Serial.println("");
Serial.println(" Server connected");
Serial.println("");
String data;
data += "ps0=";
data += String(ESP.getFreeHeap());
data += "&ps1=";
data += String(ESP.getVcc() + 512);
data += "&ps2=";
data += String(uptime());
data += "&pp0=";
data += String(temp1/100.0,2);
data += "&pg=";
data += String(post);
client.println("POST /client/req.php HTTP/1.0");
client.println("User-Agent: ESP8266");
client.println("Connection: close");
client.println("Content-Type: application/x-www-form-urlencoded");
client.print("Content-Length: ");
client.println(data.length());
client.println();
client.print(data);
delay(500);
if (client.available()) {
req = client.readStringUntil('\r');
}
if(req.startsWith("HTTP/1.1 200")) {
Serial.println(" OTBET \"OK\"");
}else {
Serial.println(" OTBET \"ERROR\"");
post += 1;
}
client.stop();
client.flush();
}