nodeJS:使用(fs)尝试访问静态资源但收到 404 错误?
nodeJS: using (fs) to try and access a static resource but receive 404 error?
我正在尝试使用指向静态资源的 nodeJS 生成一个 url,它是一个 JS 文件。它抛出一个 404 错误,未找到。
首先我用 node index.js
启动节点服务器
node.js 文件有这个:
var fs = require('fs');
function serveStaticFile(res, path, contentType, responseCode) {
if(!responseCode) responseCode = 200;
fs.readFile(__dirname + path, function(err,data){
if(err){
res.writeHead(500,{'Content-Type': 'text/plain'});
res.end('500 - Internal Error');
} else {
res.writeHead(responseCode,
{'Content-Type': 'text/plain'});
res.end(data);
}
});
}
http.createServer(function(req,res){
var path = req.url.toLowerCase();
switch(path) {
case '/avisarPagoAhora':
serveStaticFile(res, '/avisoPago/avisos-de-pago.html', 'text/html');
break;
default:
res.writeHead(404,{'Content-Type': 'text/plain'});
res.end('Not Found');
break;
}
}).listen(3000);
console.log('Server started on localhost:3000; press Ctrl-C to terminate...');
现在,我在 var/www/html/avisoPago
中得到了 index.js
我的 aviso-de-pago.html 文件位于 avisoPago 内的 avisoPago 文件夹中。
所以index.js的路径是:var/www/html/avisoPago/index.js
aviso-de-pago.html 文件的路径是:var/www/html/avisoPago/avisoPago/avisos-de-pago.html
我在做什么 wong 当我键入 http://myDomain:3000/avisarPagoAhora
时找不到文件
var path = req.url.toLowerCase();
"toLowerCase"函数使"avisarPagoAhora"变成"avisarpagoahora",因此节点找不到正确的路径'/avisarPagoAhora'
。尝试删除 toLowerCase 函数或制作 case 语句“case '/avisarpagoahora':
”
我正在尝试使用指向静态资源的 nodeJS 生成一个 url,它是一个 JS 文件。它抛出一个 404 错误,未找到。
首先我用 node index.js
node.js 文件有这个:
var fs = require('fs');
function serveStaticFile(res, path, contentType, responseCode) {
if(!responseCode) responseCode = 200;
fs.readFile(__dirname + path, function(err,data){
if(err){
res.writeHead(500,{'Content-Type': 'text/plain'});
res.end('500 - Internal Error');
} else {
res.writeHead(responseCode,
{'Content-Type': 'text/plain'});
res.end(data);
}
});
}
http.createServer(function(req,res){
var path = req.url.toLowerCase();
switch(path) {
case '/avisarPagoAhora':
serveStaticFile(res, '/avisoPago/avisos-de-pago.html', 'text/html');
break;
default:
res.writeHead(404,{'Content-Type': 'text/plain'});
res.end('Not Found');
break;
}
}).listen(3000);
console.log('Server started on localhost:3000; press Ctrl-C to terminate...');
现在,我在 var/www/html/avisoPago
中得到了 index.js我的 aviso-de-pago.html 文件位于 avisoPago 内的 avisoPago 文件夹中。
所以index.js的路径是:var/www/html/avisoPago/index.js
aviso-de-pago.html 文件的路径是:var/www/html/avisoPago/avisoPago/avisos-de-pago.html
我在做什么 wong 当我键入 http://myDomain:3000/avisarPagoAhora
时找不到文件var path = req.url.toLowerCase();
"toLowerCase"函数使"avisarPagoAhora"变成"avisarpagoahora",因此节点找不到正确的路径'/avisarPagoAhora'
。尝试删除 toLowerCase 函数或制作 case 语句“case '/avisarpagoahora':
”