PHP: получать POST-данные постепенно (проект автомобильного GPS-трекера Arduino ESP8266) - PullRequest
0 голосов
/ 10 марта 2019

Я нашел этот хороший пример при создании проекта gps-sd-wifi.

MartijnBraam / car-tracker

Проблема в github, файл php не включен.

Как мне прочитать данные, поступающие с ESP8266 (или эквивалентного), используя этот код в качестве отправителя ...

Я хотел бы получить все данные и иметь возможность сохранить их вфайл или перенаправить его на mysql.

Спасибо

void uploadTrack(char* name){
  File log = SD.open(name);
  WiFiClient client;
  int tracker = ESP.getChipId();
  String trackerId = String(tracker);
  Serial.printf("Uploading %s\n", name);
  if(client.connect("tracker.brixit.nl", 80)){
    Serial.println("Sending headers");
    String length = String(log.size());
    String headers = String("POST /upload.php HTTP/1.0\r\n")+
      "Host: tracker.brixit.nl\r\n" +
      "Connection: close\r\n" + 
      "Content-Type: text/csv\r\n" + 
      "Content-Length: " + length + "\r\n" +
      "X-Tracker: " + trackerId + "\r\n" +
      "X-Secret: " + secret + "\r\n" + 
      "X-Track: " + name + "\r\n" +
      "\r\n";
    client.print(headers);
    Serial.println("Sending data");

    char buffer[1470];
    while(true){
      int bytes = log.read(buffer,1470);
      if(bytes < 1){
        break;
      }
      client.write_P(buffer, bytes);
      delay(0);
    }
    Serial.println("Upload done");
    client.stop();
  }


}
...