首页 > 解决方案 > ApolloGraphQL:非网络套接字订阅?

问题描述

我们有一个应用程序基本上完全实现了本指南:

https://www.apollographql.com/docs/apollo-server/features/subscriptions/

太棒了。我们取得了巨大的成功,该应用程序一直表现出色。

然而,我们已经开始遇到的是,各种大公司封锁了他们内部员工的网络套接字。当我们尝试升级到 Web 套接字时,它们返回 403。

我一直在谷歌搜索,只是在 Apollo 社区中没有看到太多关于非 Web 套接字订阅的内容。一切指南/文章/示例都基于 Web 套接字。

理想情况下,我会使用像 socket.io 这样的东西,回退到长轮询是我正在考虑的解决方案。但是大家只使用subscriptions-transport-ws 库(我们用它)。我找到了一个名为 subscriptions-transport-sse 的过时库,但犹豫不决,而且我的服务器设置需要大量重构。我们使用 nestjs 和 Apollo GraphQL 模块。

有没有其他人解决了如何回退到不同的传输?我真的很想避免自己写,但看起来选择是这样还是切换到另一个内置的框架?

谢谢。

标签: graphqlapollo-clientnestjsapollo-server

解决方案


推荐阅读