在Heroku上找不到js文件

时间:2015-10-10 18:46:37

标签: node.js file heroku

当我的Node.js服务器在Heroku上运行时,找不到我的socket.js文件,但是当它在localhost上运行时,找到它。此外,尽管app.js文件与socket.js文件位于同一目录中,但无法找到它。我看过一些建议使用

的帖子
app.use('/', express.static(__dirname));

但我猜这不是这种情况。

我的index.html文件:

<script src="/angular-socket-io/socket.js"></script>
<script src="/socket.js"></script>
<script src="/socket.io/socket.io.js"></script>

在其中,唯一找不到的是第二个目录(/socket.js),其中包含&#39;套接字工厂&#39; inside。 我的文件夹树如下;

-app
--assets
---app.js
---socket.js

请帮忙吗?

2 个答案:

答案 0 :(得分:2)

只需将app.use(express.static(path.join(__dirname, 'app/assets')));添加到主代码中,然后即可使用<script src="/socket.js"></script>

答案 1 :(得分:0)

我的JavaScript文件未初始化,因为我是如何在index.html中导入JQuery脚本的。 如果包含JQuery的JavaScript文件未初始化。确保使用 HTTPS 而不是 HTTP 导入它。

错误:

<script src="http://code.jquery.com/jquery-3.5.1.js"></script>

正确:

<script src="https://code.jquery.com/jquery-3.5.1.js"></script>

这解决了我在Heroku上缺少JavaScript文件的问题。