2017-08-18 10 views
0

私のファイルの 'ルート'を定義するためにexpress.staticを使用していますが、効果がないようです。ノード+エクスプレス - 明らかに正しいパスでjavascriptファイルを見つけることができません

var express = require('express'); 
var app = express(); 
server = require('http').createServer(app); 
app.use(express.static(__dirname + 'js/View')); 
server.listen(port); 
console.log("Server listening on port " + port); 
app.get('/',(req,res) => { 
    res.sendFile(__dirname + '/js/View/output.html'); 
}); 

ブラウザでは、output.htmlは期待通りにレンダリングされますが、このスクリプトのような静的ファイルは読み込まれません。

<script type="text/javascript" src="js/wsBodyFrames.js"></script> 

しかし、サーバーは404エラーで応答します。パスが無効なのはなぜですか?

答えて

1

__dirnameスラッシュで終わりません。代わりにpath.joinに参加してください。

'use strict'; 

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

var app = express(); 
app.use(express.static(path.join(__dirname, 'js/View'))); 

app.get('/', (req, res) => { 
    res.sendFile(path.join(__dirname, 'js/View/output.html')); 
}); 

var server = require('http').createServer(app); 
server.listen(port); 
console.log("Server listening on port " + port);
+0

ありがとうございました!そして、悪い文法には申し訳ありません! –

関連する問題