如何在Node.js中最好地实现套接字客户端并转发到前端?

时间:2018-04-01 05:44:17

标签: node.js websocket socket.io

我正在考虑从加密交换(例如https://github.com/binance-exchange/node-binance-api)实现一些套接字api,但我发现提供的大多数库都在Node.js中使用websocket。

由于api需要传递api密钥和秘密,并且不建议在前端实现这样的包。我想知道这种设置中最好的实现是什么?

我想在我的前端使用websocket数据(比如实时价格和烛台数据)。我应该在Node.js中创建另一个websocket服务器,当我从交换套接字接收新数据时发出新消息(中继),我的前端只是作为websocket客户端连接到我的Node.js服务器?

1 个答案:

答案 0 :(得分:2)

  

我应该在Node.js中创建另一个websocket服务器,当我从交换机套接字接收新数据时发出新消息(中继),而我的前端只是作为websocket客户端连接到我的Node.js服务器?

是。保护安全凭证的唯一方法是将它们保留在服务器中。因此,您可以让您的node.js服务器使用这些安全凭证连接到加密交换,然后您可以让您的客户端连接到您的node.js服务器,然后无论何时从加密交换获得更新,您的服务器都可以发送通过客户端连接的webSocket或socket.io连接到客户端。

  

由于api需要传递api密钥和秘密,并且不建议在前端实现这样的包。

你是对的。秘密凭证需要保留在您的服务器上,然后您的服务器可以在有新信息要共享时将信息转发给客户端。这是一个经典的设计。做,服务器上的安全工作和中继数据到客户端。