ReferenceError:未在Object.handle中定义路径

Sha*_*hen 10 node.js express

js文件,

app.get('/',function(req,res){
    res.sendfile(_dirname + '/index.html');
});
Run Code Online (Sandbox Code Playgroud)

node.js可以启动,但是我收到了这个错误,

ReferenceError:在next_layer(E:\ javaEEstudy \node)的Object.handle(E:\ javaEEstudy \node.js \node.js入门经典\ socket\socket.io_express\app.js:12:15)中未定义路径.在Route.dispatch上的js \node.js入门经典\ socket\socket.io_express \node_modules\express\lib\router\route.js:103:13)(E:\ javaEEstudy \node.js \node.js入门经典\ socket\socket.io_express \node_modules\express\lib\router\route.js:107:5)在E:\ javaEEstudy \node.js \node.js入门经典\ socket\socket.io_express \node_modules\express\lib\router.index.js:195:24在Function.proto.process_params(E:\ javaEEstudy \node.js \node.js入门经典\ socket\socket.io_express \node_modules\express\lib\router\index.js:251 :12)在Layer.expressInit的下一个(E:\ javaEEstudy \node.js \node.js入门经典\ socket\socket.io_express \node_modules\express\lib\router\index.js:189:19)[作为句柄](E:\ javaEEstudy \node.js \node.js入门经典\ socket\socket.io_express \node_modules\express\lib\middleware\init.js:23:5)trim_prefix(E:\ javaEEstudy \node.js) \node.js的入 门经典\ socket\socket.io_express \node_modules\express\lib\router\index.js:226:17)在E:\ javaEEstudy \node.js \node.js入门经典\ socket\socket.io_express \node_modules\express\lib\router\index.js:198:9在Function.proto.process_params(E:\ javaEEstudy \node.js \node.js入门经典\ socket\socket.io_express \node_modules\express\lib\router\index. JS:251:12)

index.html和app.js在同一个文件上,express版本是4.x.

Han*_*hen 14

首先你应该使用

res.sendFile()
Run Code Online (Sandbox Code Playgroud)

代替

res.sendfile()
Run Code Online (Sandbox Code Playgroud)

其次,应该是上述方法的参数

__dirname+'index.html'
Run Code Online (Sandbox Code Playgroud)

代替

_dirname+'index.html'
Run Code Online (Sandbox Code Playgroud)

换一种说法

app.get('/',function(req,res){
    res.sendFile(__dirname + '/index.html'); 
});
Run Code Online (Sandbox Code Playgroud)

您还必须path在Node.js应用中声明:

var path = require("path");
Run Code Online (Sandbox Code Playgroud)


小智 5

var express = require('express');
var app = express();
var path=require('path');
var bodyParser = require("body-parser");
app.use(bodyParser.urlencoded({ extended: false }));

app.get('/', function (req, res) {
    res.sendFile(path.join(__dirname + '/index.html'));
});
var server = app.listen(5000, function () {
    console.log('Node server is running..');
});
Run Code Online (Sandbox Code Playgroud)