NodeJS - 如何连接到运行 Node 应用程序的远程 PC?

Posted

技术标签:

【中文标题】NodeJS - 如何连接到运行 Node 应用程序的远程 PC?【英文标题】:NodeJS - How to connect to remote PC that runs Node app? 【发布时间】:2019-06-07 07:07:46 【问题描述】:

我有一个 Nodejs 客户端应用程序和一个 Nodejs 服务器应用程序。我将 Apollo GraphQL 用于网络。

如果在同一台电脑上运行,它们可以正常通信。如果客户端在另一台电脑上,而服务器在我的电脑上,它们也可以正常工作,仅通过 LAN。他们无法通过互联网进行交流。

我现在可以使用的代码:

服务器:

server.listen(PORT, '0.0.0.0',() ...

客户:

 const wsLink = new WebSocketLink(

 uri: 'ws://192.168.10.41:8081/subscriptions',

【问题讨论】:

如果问题是您在 NAT 路由器后面,您正在寻找“NAT traversal”。 @Bergi 你说的是服务器还是客户端电脑? 无法从 Internet 访问服务器 【参考方案1】:

首先,您必须确保两个节点都有一个公共 IP,否则如果您在对称 NAT 后面,您将无法做到这一点。

之后你可以使用node的一些模块,例如UDP(用户数据报协议)来尝试连接。

祝你好运

【讨论】:

以上是关于NodeJS - 如何连接到运行 Node 应用程序的远程 PC?的主要内容,如果未能解决你的问题,请参考以下文章

Kubernetes node.js 容器无法连接到 MongoDB Atlas

如何从局域网外部连接到 Nodejs 服务器

如何从 Angular Nginx 容器连接到 Node API docker 容器

如何将nodeJS docker容器连接到mongoDB

NodeJS 连接到 paradox 数据库

将 NodeJS Docker 容器连接到 MySQL Docker 容器 - docker-compose 3