INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
ESP32 Dateien zum Download anbieten
10.10.2019, 17:31
Beitrag #1
ESP32 Dateien zum Download anbieten
Hallo! Ich versuche gerade ein Programm zu schreiben welches mir Daten in eine Textdatei auf einer SD-Karte schreibt und mir diese anschließend auf dem Webserver zum Download anbietet. Soweit funktioniert alles ganz gut. Nur der Download funktioniert nicht wie gewünscht. Ich kann die datei herunterladen, aber diese hat immer max. 64 kB.

Hier der Code:

Code:
void readFile(fs::FS &fs, const char * path)
{
    File file = fs.open(path);
    if(!file)
    {
        Serial.println("Failed to open file for reading");
        return;
    }
    else
    {
        Serial.println("Read from file: ");
        Serial.write(file.read());
        Server.send(200, "application/octet-stream",file.readString());  
    }
      
    file.close();

}

Ich glaube ich stehe da gerade total auf dem Schlauch. Könnt ihr mir da helfen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.10.2019, 18:23
Beitrag #2
RE: ESP32 Dateien zum Download anbieten
Dann schau dir meinen Esp32 Spiffs Datei Manager an oder nutze ihn direkt.

Gruß Fips

Meine Esp8266 & ESP32 Projekte
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.10.2019, 19:12
Beitrag #3
RE: ESP32 Dateien zum Download anbieten
Den habe ich mir schon einmal grob angeschaut (noch nicht im detail...) aber wenn ich das richtig verstehe ist das nicht gebaut um dateien von der SD-Karte zum Download zu Verfügung zu stellen oder?
Das Problem ist das ich in diesen 64 KB ca 850 Datensätze speichern kann. Es ist aber durchaus möglich das der länger in Betrieb ist und dann mehrere Tausend Datensätze speichern muss.
Die Datei auf der SD-Karte ist auch größer! Und ich kann diese auch downloaden aber er schneidet die Datei halt einfach bei 64 KB ab beim Download.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.10.2019, 20:04 (Dieser Beitrag wurde zuletzt bearbeitet: 10.10.2019 20:08 von Tommy56.)
Beitrag #4
RE: ESP32 Dateien zum Download anbieten
Schau Dir mal diese Methode vom Webserver an (Zeile 137ff.)
Code:
void readFile(fs::FS &fs, const char * path)
{
    File file = fs.open(path);
    if(!file)
    {
        Serial.println("Failed to open file for reading");
        return;
    }
    else
    {
        Serial.println("Read from file: ");
        size_t rc = streamFile(file, "application/octet-stream")
     }
Dem ist es egal, woher das File kommt, Hauptsache ein gültiges Filehandle.

Gruß Tommy

Edit: von ESP8266 auf ESP32 korrigiert.

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.10.2019, 08:44 (Dieser Beitrag wurde zuletzt bearbeitet: 11.10.2019 08:46 von Sonny354.)
Beitrag #5
RE: ESP32 Dateien zum Download anbieten
Guten Morgen.

Ich hab mir das mal angeschaut und bin auf diese Lösung gekommen:
Code:
void readFile(fs::FS &fs, const char * path)
{
    Serial.printf("Reading file: %s\n", path);
    {
        Serial.println("Read from file: ");
        Serial.write(file.read());
          
        Server.streamFile(file, "application/octet-stream");
    }
      
    file.close();

}

Jetzt startet der download auch mit der richtigen Dateigröße, aber er bricht dann mit dieser Fehlermeldung ab:

https://ibb.co/xYB0MW9
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.10.2019, 09:17 (Dieser Beitrag wurde zuletzt bearbeitet: 11.10.2019 09:18 von Tommy56.)
Beitrag #6
RE: ESP32 Dateien zum Download anbieten
Da kann man absolut nichts erkennen.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.10.2019, 09:31
Beitrag #7
RE: ESP32 Dateien zum Download anbieten
Kann man in dem Bild mit der Fehlermeldung nichts erkennen oder was meinst du? oder funktioniert der Link zu dem Bild nicht?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.10.2019, 09:33
Beitrag #8
RE: ESP32 Dateien zum Download anbieten
(11.10.2019 09:31)Sonny354 schrieb:  Kann man in dem Bild mit der Fehlermeldung nichts erkennen oder was meinst du? oder funktioniert der Link zu dem Bild nicht?
Man kann auf dem Bild nichts erkennen.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Display am ESP32 - kein Bild Gerdchen03 17 544 Gestern 16:56
Letzter Beitrag: Gerdchen03
  ESP32 Serial Bluetooth Connect Nach_Sound 0 252 04.10.2019 13:47
Letzter Beitrag: Nach_Sound
  ESP32 Cam Mafri 83 9.110 01.10.2019 20:26
Letzter Beitrag: hotsystems
  Flash-Problem ESP32 Jonny 3 356 25.09.2019 18:56
Letzter Beitrag: Tommy56
  ESP32 startet nach Netzausfall nicht mehr. magnum1795 11 643 25.09.2019 10:52
Letzter Beitrag: Tommy56
  ESP32 > RS485 >Nano shrimps 4 423 22.09.2019 22:49
Letzter Beitrag: shrimps
Question ESP32: Core Panik! achim81 19 1.761 11.09.2019 08:03
Letzter Beitrag: Fips
  Debug mit Telnet ESP8266 (und ESP32 ungetestet)) Tommy56 7 4.909 07.09.2019 14:11
Letzter Beitrag: ardu_arne
  ESP32-CAM Projekt MINICAM Maico 11 2.419 22.08.2019 22:03
Letzter Beitrag: Maico
  ESP32 - Schreibzyklen im RTC RAM Hoffmakl 5 847 22.08.2019 21:07
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste