Ich schreibe eine einfache Anwendung in node.js, aus irgendeinem Grund bekomme ich den Fehler "TypeError: Pfad muss absolut sein oder angeben root res.sendFile" wenn versuchen, meine HTML-Seite zu dienen. Dieser Fehler sollte nicht auftreten, da ich eine Express-Middleware verwendet habe, die den Ordner angibt, in dem diese Datei gefunden werden kann. Warum bekomme ich dieses Problem?Node.js Anwendung nicht statische Webpage ohne Root-Pfad
Meine app Struktur sieht wie folgt aus
MyApp
public
login.html
app.js
Meine HTML-Seite in app.js wie diese
var express = require("express");
var app = express();
app.use(express.static("public"));
app.get('/', function(req, res){
res.sendFile("login.html");
});
app.listen(3000);
serviert wird Ich weiß, dies zu umgehen, was ich tun kann „res.sendFile (__dirname + '/ public/login.html'); " Stattdessen sollte ich es nicht tun, da ich eine Middleware verwende. Irgendwelche Ideen?
Das ist etwas verwirrend, erwarten Sie, dass Node in den Ordner "public" schauen sollte, wenn Sie 'sendFile()' einen Dateinamen geben? Es werden nicht nur statische Dateien beim direkten Zugriff geladen, daher der Name "statisch". – adeneo
Was ist dein Betriebssystem? –
@adeneo Ja, ich erwarte, dass es im öffentlichen Ordner aussieht, da login.html statisch ist. – OneMoreQuestion