Node.Js,express,res.sendFile无法建立根目录

时间:2018-07-18 01:23:02

标签: node.js express

我有一个带有以下代码的简单Express服务器

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

var fs = require('fs');

var bodyParser = require('body-parser')
var urlencodedParser = bodyParser.urlencoded({ extended: false })


app.get('/',(req,res)=>{
  res.sendFile('index.html', { root: __dirname }))
})


app.listen(9432);

管理建立连接,但是当我尝试发送文件时,出现错误提示 “ TypeError:路径必须是绝对路径或将根目录指定为res.sendFile” 我尽了我所能想到的一切。

服务器在http://www.nextweb.rs/上是十倍体

(在localhost上测试时代码正常运行)

1 个答案:

答案 0 :(得分:2)

您使用的__dirname错误。

这是一个模块作用域的全局变量,因此,如果将其放在字符串中(就像您正在做的那样),那么它将根本无法解析。该字符串将仅等于__dirname,而不是/home/ultimate/ultimate(如您所愿)。这应该是这样:

app.get("/", (req, res) => {
    res.sendFile("index.html", { root: __dirname });
});