在下面的问题中,有人给了我以下代码:
res.end(fs.readFileSync(__dirname + "index.html"));
然而,这是创建folderNameindex.html的文件名,即在index.html之前需要反斜杠。从谷歌搜索,解决方案应该是双引号内的两个x \,产生“\ index.html”。我已经尝试过这个和许多其他变化,单,双,高音,正斜线,正则表达式逃避。在每种情况下,我的CLI都告诉我它找不到文件folderNameindex.html。
这可能很简单。感谢任何帮助。
Can i use node as webserver for html app?
编辑:
我的新代码:
const http = require('http'), // to listen to http requests
path = require('path'),
fullPath = path.join(__dirname, 'index.html'),
fs = require('fs'); // to read from the filesystem
const app = http.createServer((req,res) => {
// status should be 'ok'
res.writeHead(200);
// read index.html from the filesystem,
// and return in the body of the response
res.end(fs.readFileSync(fullPath)); });
app.listen(3000); // listen on 3000
我仍然得到同样的错误 - 我的命令行告诉我它找不到folderNameindex.html
答案 0 :(得分:0)
你应该使用path.join,例如;
const path = require('path')
const fullPath = path.join(__dirname, 'index.html')
此外,还有许多其他功能可以帮助您以便携方式使用路径,请务必阅读path和file system模块的所有文档。