问题:node.js - TypeError: 路径必须是绝对路径或将根路径指定为res.sendFile
回答: 这个错误是由于在使用Node.js的Express框架中的res.sendFile方法时,传递的路径参数不是绝对路径或者没有将根路径指定为参数导致的。
解决这个问题的方法有两种:
const path = require('path');
const express = require('express');
const app = express();
app.get('/', (req, res) => {
const filePath = path.join(__dirname, 'relative/path/to/file');
res.sendFile(filePath);
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
const express = require('express');
const app = express();
app.use(express.static('public'));
app.get('/', (req, res) => {
res.sendFile('relative/path/to/file', { root: __dirname });
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
在上述代码中,将静态文件目录设置为'public',然后在调用res.sendFile方法时,将根路径指定为__dirname。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和对象存储(COS)。
请注意,以上答案仅供参考,具体的解决方法和推荐产品可能因实际情况而异。
领取专属 10元无门槛券
手把手带您无忧上云