我当前的工作是使用GraphQL连接到实现聊天并通过订阅公开聊天功能的Adonis WebSocket。
到目前为止,我拥有的是一个节点WebSocket客户端,该客户端连接到简单的回显服务器,并附加了一个负责使用pubsub发布消息的侦听器。可行,我可以使用GraphQL订阅从回显服务器获得回复。
但是,adonis WebSocket服务器提供了诸如频道和房间之类的实用程序,因此我必须使用Adonis客户端。客户端似乎想要访问该文档,这是第一个问题,它似乎无法在浏览器之外运行。
如果我让服务器在GraphQL服务器中工作,那么仍然存在打开通道的问题。使用前端上的客户端,它仅调用一个方法并打开一个通道。如果通过GraphQL转发,我是否需要将来自客户端的方法公开为查询/突变?
是否可以在GraphQL服务器中运行adonis客户端?如果是这样,我是否需要通过查询/更改来公开某些客户端方法?还是有更好的方法通过GraphQL订阅转发WebSocket?