node.js-TypeError:路径必须是绝对路径或将根目录指定为res.sendFile [英] node.js - TypeError: path must be absolute or specify root to res.sendFile

查看:43
本文介绍了node.js-TypeError:路径必须是绝对路径或将根目录指定为res.sendFile的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试找出此问题的根源.根据此页面,一切都应该正常工作,但出现此错误.

I'm trying to figure out what is the source of this problem. According to this page, everything should work fine, but i get this error.

TypeError: path must be absolute or specify root to res.sendFile
at ServerResponse.sendFile (/Users/apple/Documents/JavsScript/test/node_modules/express/lib/response.js:410:11)
at /Users/apple/Documents/JavsScript/test/server.js:13:9
at Layer.handle [as handle_request] (/Users/apple/Documents/JavsScript/test/node_modules/express/lib/router/layer.js:95:5)
at next (/Users/apple/Documents/JavsScript/test/node_modules/express/lib/router/route.js:137:13)
at Route.dispatch (/Users/apple/Documents/JavsScript/test/node_modules/express/lib/router/route.js:112:3)
at Layer.handle [as handle_request] (/Users/apple/Documents/JavsScript/test/node_modules/express/lib/router/layer.js:95:5)
at /Users/apple/Documents/JavsScript/test/node_modules/express/lib/router/index.js:281:22
at Function.process_params (/Users/apple/Documents/JavsScript/test/node_modules/express/lib/router/index.js:335:12)
at next (/Users/apple/Documents/JavsScript/test/node_modules/express/lib/router/index.js:275:10)
at SendStream.error (/Users/apple/Documents/JavsScript/test/node_modules/serve-static/index.js:121:7)

这是我的代码:

var host = '127.0.0.1';
var port = 8020;

var express = require('express');
var path = require('path');

var app = express();

app.use(express.static(path.join(__dirname, 'Public')))

app.get('/', function (req, res) {
    res.sendFile('index.html');
});

app.listen(port, host, function () {
    console.log('App listening on ' + host + ':' + port);
});

这是我的目录结构:

server.js
node_modules
package.json
Public  
    views
       inde.html

推荐答案

只需尝试以下操作:

res.sendFile('Public/views/inde.html' , { root : __dirname});

这篇关于node.js-TypeError:路径必须是绝对路径或将根目录指定为res.sendFile的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆