是否可以将一个协议连接到同一服务器上的另一个协议?我的目标是接受一个协议的请求,然后将该请求传递给另一个协议,让第二个协议将值返回给连接到它的任何客户端。
我想你会把onMessage请求转移到其他协议上。
我没有任何代码可以显示,因为我不知道从哪里开始,但任何代码示例都会受到赞赏。
答案 0 :(得分:3)
你要求的是proxy server之类的声音。代理可以简单地是一个中间人,在两端都说出相同的协议(如在典型的http代理中),或者它可以是某种协议,其中有一个协议进入,另一个协议出来。
因此,假设您希望浏览器能够使用webSocket连接与其他不使用webSocket协议的服务器通信。您可以自己实现一个代理服务器,允许浏览器连接到它,然后通过您的代理,它可以与另一个使用不同协议的服务器发送/接收消息。
要实现这样的代理服务器,您需要执行以下操作:
代理有责任将每个消息数据从通过webSocket接收的内容转换为其他服务器所说的任何格式/协议。
无论您是为每个webSocket连接在代理和其他服务器之间维护专用连接,还是通过一个专用连接定向所有请求,或者是否仅在需要时创建了新连接,这将是一个实现选择。给定的请求。最有意义的完全取决于其他服务器的特性,请求数量和正在进行的工作。