gpt4 book ai didi

javascript - 是否可以在 node.js 服务器上设置运行(服务器端)的 socket.io 客户端?

转载 作者:IT老高 更新时间:2023-10-28 22:03:22 25 4
gpt4 key购买 nike

我想在两个或多个不同的 node.js 应用服务器之间启用基于套接字的 p2p 通信。我正在使用 socket.io 来处理给定服务器和它所服务的 Web 应用程序之间的所有此类通信 - 但我正在寻找的是一种服务器到服务器通信的方式。

我最初以为它会像这样简单:

var io = require("socket.io");
var socket = io.connect("my remote endpoint");

但是,事实证明服务器端 socket.io 实现不提供“连接”方法,仅提供监听方法。

这是为什么?为什么我不能将 Node 应用程序服务器视为在其他地方运行的 socket.io 服务器的客户端?有什么方法可以实现这个功能吗?

最佳答案

好的,感谢上面评论中的@pimvdb,我有一个可行的解决方案。

基本上,npm 安装的 socket.io 库依赖于另一个模块,称为 socket.io-client。在标准的 socket.io 安装中,这将安装在 node_modules/socket.io/node_modules/socket.io-client 中

但是,也可以说“npm install socket.io-client”并将其安装为自己的一等公民库。

那么你的用法是这样的:

var client = require("socket.io-client");
var socket = client.connect("http://myendpoint.com:3000/whatever");
socket.emit("test", "foo");

一切正常。

那么,谢谢大佬!

关于javascript - 是否可以在 node.js 服务器上设置运行(服务器端)的 socket.io 客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9687561/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com