【问题标题】:Node.js + Socket.io on heroku fail to get socket.io/socket.io.jsHeroku 上的 Node.js + Socket.io 无法获取 socket.io/socket.io.js
【发布时间】:2015-06-16 23:56:24
【问题描述】:

首先,我要感谢您花时间帮助我。

我正在尝试使用 node.js 和 socket.io 实时在线执行 Web 应用程序。 这是我在本地尝试我的应用程序时遇到的问题,但是当我将其推送到 heroku 上时,服务器找不到我的 “herokuApp.heroku.com/socket.io/socket.io.js”

当然,我搜索了很多来解决我的问题,但这里没有任何东西可以解决它。 这是我的文件:

    var express = require('express');
var app = express(),
    server = require('http').createServer(app),
    io = require('socket.io').listen(server),
    ent = require('ent'), // Disable HTML caracters (equal htmlentities in PHP)
    fs = require('fs');


    app.use(express.static(__dirname + '/public_html'));
    app.set('port', (process.env.PORT || 5000));
    server.listen(5000);


    io.sockets.on('connection', function (socket) {

        socket.on("newMsg", function(data){
            console.log("the client message: " + msg);});

    });


    app.get('/', function(request, response) {
      response.send('Hello World!');
    });

    app.listen(app.get('port'), function() {
      console.log('Node app is running on port', app.get('port'));
    });

在我的 index.html 中

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

我在推送我的提交时添加了一些信息,例如服务器响应: http://puu.sh/irF05/e1c648c627.png

以及我的文件结构: http://puu.sh/irF8V/8240318ae6.png(上面的代码来自index.js,我不使用server.js)

再次感谢您阅读本文,我对节点或套接字不是很熟悉,如果解决方案简单,请见谅。

【问题讨论】:

    标签: node.js sockets heroku


    【解决方案1】:

    确保 socket.io.js 确实被推送到 Heroku 存储库。执行git status 并确保它未被 git 跟踪。此外,如果您发布此项目的文件夹结构(至少是相关文件)可能会有所帮助

    【讨论】:

    • 谢谢你的快速回答我添加了你问我的信息我也完成了 git 状态并且我的 git 没有被跟踪
    • 那么在那个结构中,socket.io.js 在哪个文件夹中?
    • 它在 node_modules\socket.io\node_modules\socket.io-client\socket.io.js 但它会在没有完整路径的情况下收费我在 localhost:port
    • 好吧,假设脚本标签在某种 index.html 文件中,您需要确保您有一个可在客户端访问的库版本(发送到用户的浏览器)。因此,您将需要 public_html 中的版本。可选地排除其他可能性,我会将脚本标记更改为&lt;script src="https://cdn.socket.io/socket.io-1.3.5.js"&gt; &lt;/script&gt; 之类的东西。这将引用外部 CDN 处的代码。
    • 我发现了这个stackoverflow.com/questions/8689877/cant-find-socket-io-js,我认为这是对的,但我不明白为什么服务器不分发 io 的版本
    猜你喜欢
    • 2018-02-13
    • 2013-04-26
    • 2013-10-25
    • 1970-01-01
    • 2012-07-25
    • 2014-10-20
    • 2017-07-01
    • 2017-08-28
    • 2013-03-16
    相关资源
    最近更新 更多