Ниже кода Arduino ESP32 создается список файлов в виде URL. Я конвертирую проект клиент / сервер WiFi для использования библиотеки AsyncWebServer. Нужна помощь в извлечении имени файла из URL и возможность определения имени файла для загрузки на веб-сервере Async.
String str;
if (!SPIFFS.begin(true))
{
Serial.println("An Error has occurred while mounting SPIFFS");
return;
}
File root = SPIFFS.open("/");
File file = root.openNextFile();
while (file)
{
if(strncmp(file.name(), "/LOG", 4) == 0)
{
str += "<a href=\"";
str += file.name();
str += "\">";
str += file.name();
str += "</a>";
str += " ";
str += file.size();
str += "<br>\r\n";
}
file = root.openNextFile();
}
client.print(str);
Попытка кода для Asyncwebserver:
serverAsync.on(filename, HTTP_GET, [](AsyncWebServerRequest *request){
AsyncWebServerResponse *response = request->beginResponse(200, "text/plain", "Ok");
response->addHeader("Content-Disposition", "attachment");
request->send(response);
});
Этот код создает: окно загрузки с правильным именем файла;Тем не менее, содержимое только «хорошо».
Моя первоначальная попытка состояла в том, чтобы попробовать что-то с PHP. Я менее опытный программист с PHP и Async Web Server.
Уильям