安装后如何 运行 PeerJS Server Heroku

How to Run PeerJS Server Heroku Once Installed

我已经在 Heroku 上安装了我的 PeerJS 服务器。

当我在网络浏览器中 运行 测试页面 myappname.herokuapp.com 时,它响应:

{"name":"PeerJS Server","description":"A server side element to broker connections between PeerJS clients.","website":"https://peerjs.com/"}

但是,我如何运行命令?

$ peerjs --port 9000 --key peerjs --path /myapp

什么是 myapp

就目前情况而言,当我尝试从网页连接到我的 Heroku PeerJS 服务器时,它只是说它无法生成 ID。

我尝试在我的 html 页面中调用它:

const peer = new Peer(null /*'someid'*/, {
                host: "myappname.herokuapp.com/",
                port: 443,
                path: '/myapp',
                secure: true,
            });

同样,我不知道 myapp 是什么?

我必须生成自己的 ID 吗?我虽然那是在 Heroku 服务器上完成的?

我如何生成自己的 ID?我要更改什么文件?

However, how do I run the command?

peerjs --port 9000 --key peerjs --path /myapp

你不知道。

我假设您已经使用“部署到 Heroku”按钮部署了 PeerJS here
在这种情况下,您不必 运行 命令。服务器已经 运行ning.

更多信息:

Heroku 是一个托管平台。它允许您托管以 Node.js(和其他一些语言)编写的 应用程序
当您单击“部署到 Heroku”按钮时,PeerJS 的所有设置都会在幕后自动完成。

https://github.com/heroku/node-js-getting-started 是在 Heroku 上为 运行 构建的示例应用程序。
我强烈建议您完成分步教程并设置示例应用程序: https://devcenter.heroku.com/articles/getting-started-with-nodejs#prepare-the-app


What is myapp ?

myapp 是 PeerJS 将监听的 url 路径
按照您设置的方式,PeerJS 将 运行 在根 url (https://myappname.herokuapp.com) 上。正如您所注意到的,只要访问该网站就会给您测试 JSON 消息。

但是,如果您希望在有人打开 https://myappname.herokuapp.com 时显示您的网站,并且仍想在同一台服务器上托管 PeerJS,该怎么办?在这种情况下,您可以告诉 PeerJS 只监听(例如)https://myappname.herokuapp.com/myapp url 上的请求。这样,普通访问者将在访问 url 时看到您的网站,并且您的网站仍然可以在 https://myappname.herokuapp.com/myapp.

上使用 PeerJS

因为我们知道服务器的主机 (https://myappname.herokuapp.com) 将保持不变,我们只需要告诉 PeerJS 它必须在其上的相对路径听着。

注意url路径不限于一个子目录。您应该能够使用 /peerjs/services/peerjs/a/b/c 或任何其他有效路径。


As it presently stands, when I try to connect to my Heroku PeerJS Server from a webpage, > it just says it cannot generate an id.

I try to call it within my html page with:

const peer = new Peer(null /*'someid'*/, {
            host: "myappname.herokuapp.com/",
            port: 443,
            path: '/myapp',
            secure: true,
       });

我怀疑错误是因为参数不正确。

让我们再看一遍:

  • 传入 null 作为 ID 不是一个好主意,请尝试使用像 "someid"
  • 这样的字符串
  • host 应该是 myappname.herokuapp.com,结尾的斜杠 (/) 可能会导致问题
  • port 是正确的,但不是必需的,因为它默认为 443
    443 是标准的 HTTPS 端口)。
  • path 在这种情况下是不正确的,因为 PeerJS 服务器 运行ning 在根 url 上 这个参数应该省略
  • secure 正确,HTTPS 上的 Heroku 应用 运行。

以下是 PeerJS 客户端文档供参考:https://peerjs.com/docs.html#peer-options

尝试使用此代码连接到您的 PeerJS 实例:

const peer = new Peer("someid", {
    host: "myappname.herokuapp.com",
    secure: true
});

我已尽力解释术语,但请随时询问您是否需要更多说明。