2017-08-26 10 views
0

私はこの問題の原因を突き止めようとしています。このpageによると、すべて正常に動作するはずですが、このエラーが発生します。ここでnode.js - TypeError:絶対パスかres.sendFileのルートを指定する必要があります

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 
+0

わからないがエラーがその問題が['re s.sendFile'](http://expressjs.com/en/4x/api.html#res.sendFile)。 – robertklep

答えて

0

ちょうどこの試してください:あなたはにリンクしている理由

res.sendFile('Public/views/inde.html' , { root : __dirname}); 
関連する問題