RtroN
New member
Мне нужно подключить файл JavaScript через SPIFFS. Я уже пробовал это сделать, но ничего не получилось. Подключаю все файлы через server.streamFile, и html отлично работает, а вот другой файл с js, нет. Подскажите пожалуйста как это исправить?(Желательно на примере моего кода). Так же скажите пожалуйста почему в Inspect/Network/All всё вроде бы есть, а на самом деле нет?
Код esp:
#include <ESP8266WiFi.h>
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <FS.h>
const byte DNS_PORT = 53;
IPAddress apIP(172, 0, 0, 1);
DNSServer dnsServer;
ESP8266WebServer server(80);
void handleSend() {
Serial.println("Input");
if (server.arg("input")!= ""){
Serial.println("Input is: " + server.arg("input"));
}
}
void setup()
{
SPIFFS.begin();
Serial.begin(115200);
Serial.println("Started");
WiFi.mode(WIFI_AP);
WiFi.softAPConfig(apIP, apIP, IPAddress(255, 255, 255, 0));
WiFi.softAP("INFO");
dnsServer.start(DNS_PORT, "*", apIP);
server.onNotFound([]()
{
File file = SPIFFS.open("/index.html","r");
server.streamFile(file, "text/html");
file.close();
File filejs = SPIFFS.open("/script.js","r");
server.streamFile(filejs, "application/javascript");
filejs.close();
});
server.on ("/send", handleSend);
server.begin();
}
void loop()
{
server.handleClient();
dnsServer.processNextRequest();
}
Код html:
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='utf-8'>
<meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
<p>TEXT</p>
<script src="script.js"></script>
</body>
</html>
Код js:
document.write("SCRIPT TEST")
Код esp:
#include <ESP8266WiFi.h>
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <FS.h>
const byte DNS_PORT = 53;
IPAddress apIP(172, 0, 0, 1);
DNSServer dnsServer;
ESP8266WebServer server(80);
void handleSend() {
Serial.println("Input");
if (server.arg("input")!= ""){
Serial.println("Input is: " + server.arg("input"));
}
}
void setup()
{
SPIFFS.begin();
Serial.begin(115200);
Serial.println("Started");
WiFi.mode(WIFI_AP);
WiFi.softAPConfig(apIP, apIP, IPAddress(255, 255, 255, 0));
WiFi.softAP("INFO");
dnsServer.start(DNS_PORT, "*", apIP);
server.onNotFound([]()
{
File file = SPIFFS.open("/index.html","r");
server.streamFile(file, "text/html");
file.close();
File filejs = SPIFFS.open("/script.js","r");
server.streamFile(filejs, "application/javascript");
filejs.close();
});
server.on ("/send", handleSend);
server.begin();
}
void loop()
{
server.handleClient();
dnsServer.processNextRequest();
}
Код html:
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='utf-8'>
<meta name='viewport' content='width=device-width, initial-scale=1'>
</head>
<body>
<p>TEXT</p>
<script src="script.js"></script>
</body>
</html>
Код js:
document.write("SCRIPT TEST")