javascript - Node JS res.sendFile 不发送图像或目录

标签 javascript node.js http-status-code-404

如上所述,我只运行 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/

相关文章:

javascript - 在 JavaScript 中的过滤器内应用过滤器

JavaScript 执行引擎未指定?

javascript - 使用 Aurelia 进行可排序行组(+ 组子行)

javascript - 使用 await 而不是 Promises 的正确方法是什么?

javascript - Node :-How to store image from a form in mongo DB using multer and send the same image to mail as an attachment

java - 在 Eclipse 中的 tomcat 上使用 Struts 运行 Web 应用程序时出现 404 错误

javascript - 需要帮助编写 Google Chrome 扩展程序(初学者)

javascript - 为什么 Node 没有检测到我最近创建的文件

.htaccess - 1&1 服务器上的访问被拒绝

c# - 如果未找到动态内容,则将用户正确发送到 404 (ASP.NET MVC)