【问题标题】:Deploy PeerJS server on Heroku在 Heroku 上部署 PeerJS 服务器
【发布时间】:2018-06-13 13:19:40
【问题描述】:

PeerJS 服务器有问题。我从这里使用了“部署到 Heroku”按钮: https://github.com/peers/peerjs-server

我不知道如何连接已部署的云。 我找不到关于 PeerJS 服务器的明确文档。

我不知道我的应用的主机、端口和路径是什么。

var peer = new Peer('someid', {host: 'localhost', port: 9000, path: '/myapp'});

请指教。

【问题讨论】:

    标签: javascript node.js heroku webrtc peerjs


    【解决方案1】:

    您的主机只是您的 Heroku 应用程序的网址。例如,如果您的 Heroku 应用程序名为 peerjsapp,那么主机将是“peerjsapp.herokuapp.com”。您可以在 Heroku 仪表板上找到您的应用程序的名称。端口通常为 9000,但如果您使用 HTTPS,则可以是 443(如果您使用的是 HTTPS,请确保还传入 secure:true)。除非您更改了路径,否则您不需要包含路径;如果您正在运行默认服务器配置,则在客户端上省略路径将自动连接。最后,由于您托管自己的服务器,因此不需要 ID。

    【讨论】:

    • 使用默认配置,PeerJS 尝试绑定到端口 443,而Heroku 不支持,这些是系统端口Access denied。还有其他人面临这个吗?更糟糕的是,Heroku 只公开了一个端口。我曾尝试使用ExpressPeerServer,但遵循docs 上的代码总是在客户端给我一个404
    • 我在使用new Peer('someid', { host: my-peer-server.herokuapp.com/', secure:true, port: 443 })时也得到了401 access denied
    【解决方案2】:

    这对我来说是这样的:

    var peer = new Peer('someid', {
                    secure: true, 
                    host: 'your-app-name.herokuapp.com', 
                    port: 443,
        });
    

    【讨论】:

    • 我收到了,,,“peerjs/id?ts=16303228229380.2362624806656488:1 加载资源失败:服务器响应状态为 404(未找到)”
    • 听起来您的主机设置为“peerjs”,而不是可以访问的完整 URL。
    【解决方案3】:

    • 我认为你应该这样做:

    const myPeer = new Peer(undefined, {
      secure: true,
      host: '0.peerjs.com',
      port: '443'
    })

    • 解释:

    将您的应用部署到 Heroku 后,在控制台中输入“peerjs”以搜索 peerjs 对象,您可以从中导航并找到键值对

    CLOUD_HOST: "0.peerjs.com"

    CLOUD_PORT:“443”

    下一步就是将您自己的主机和端口与这些值相匹配。

    这就是我的做法Console Screenshot

    • 注意:

    对于secure: true 部分,我已经尝试过,无论有没有它,该应用程序都可以正常工作。因此,您可以选择是否包含它。我还在https://peerjs.com/docs.html 上找到了相同的信息,如果您需要更详细的文档,请查看。

    【讨论】:

      猜你喜欢
      • 2018-07-06
      • 2018-04-18
      • 2016-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-10
      • 1970-01-01
      相关资源
      最近更新 更多