Ich bin relativ neu. Ich habe einen Knoten-Express-Server erstellt, der lokal ausgeführt wird. Und ich habe eine index.html
unter public\html
Ordner. Wenn ich diese Indexseite besuche, erhalte ich einen Fehler Can't render headers after they are sent to the client node server error
. Mein Verständnis ist, dass, wenn die URL localhost: 8080 plus /
ist, wird index.html gerendert werden? Wie löse ich dieses Problem? Danke vielmals!Node Express-Serverfehler: Kopfzeilen können nicht gerendert werden, nachdem sie an den Client gesendet wurden
ps: Die seltsame Sache ist, dass, wenn ich Index.html aus dem Ordner "public" in das gleiche Verzeichnis mit dem Knoten server.js verschieben und zu app.get('/', function (req, res {fs.readFile('/index.html'..
ändern die index.html scheint gut zu funktionieren.
var fs = require('fs');
var http = require('http');
var https = require('https');
var request = require('request');
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var path = require('path');
var express = require('express');
var app = express();
var certificate = fs.readFileSync('something.0.0.1.cert');
var privateKey = fs.readFileSync('something.0.0.1.key');
process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
app.use(express.static(__dirname+'/public'));
app.get('/', function (req, res) {
fs.readFile('__dirname + '/public'+ '/html'+/index.html', function(error, content) {
if (error) {
res.writeHead(500);
res.end();
}
else {
res.writeHead(200, { 'Content-Type': 'text/html' });
res.end(content, 'utf-8');
}
});
res.send('Hello World');
});
https.createServer({
key: privateKey,
cert: certificate
}, app).listen(8080,'0.0.0.0');
Sie meinen, die ganze Zeile 'fs.readFile ('__ dirname + '/ public' + entfernen '/html'+/index.html', Funktion (Fehler, Inhalt) '? Wie ich sage es zu lesen index.html aber nicht andere .html-Dateien dann? – user4046073
aktualisiert meine Antwort mit etwas zu versuchen – Turnipdabeets