如上所述,我只运行 html 文件,并且能够看到图片,但是当我通过 Node 运行该文件时,它会向我使用的文件发送 404 错误。
<html>
<body>
<img src="aaa.jpg" />
<script src="/socket.io/socket.io.js">
</script>
<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
<script>
</script>
</body>
</html>
和 Node 代码
var app = require("express")();
var http = require("http").Server(app);
var io = require("socket.io")(http);
app.get("/", function (req, res) {
res.sendFile(__dirname + "/Movie.html");
});
http.listen(5969, function () {
console.log("Server Open");
});
我怎样才能阻止这种情况发生?
最佳答案
要提供图像和脚本等静态文件,您需要包含一个提供静态文件的中间件。将所有静态文件放入公共(public)目录中并像这样提供它们。
var express = require("express");
var app = express();
var http = require("http").Server(app);
var io = require("socket.io")(http);
// Serve static files
app.use(express.static(__dirname + '/public'));
app.get("/", function (req, res) {
res.sendFile(__dirname + "/Movie.html");
});
http.listen(5969, function () {
console.log("Server Open");
});
关于javascript - Node JS res.sendFile 不发送图像或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30787924/