如何启动 websocket graphql 服务器

Posted

技术标签:

【中文标题】如何启动 websocket graphql 服务器【英文标题】:How to start websocket graphql server 【发布时间】:2021-04-26 06:02:16 【问题描述】:

我正在尝试从https://the-guild.dev/blog/graphql-over-websockets 运行代码。我将服务器代码与创建模式的代码放在一个名为 socket-server.js 的文件中。然后我只是想使用节点 src/socket-server.js。我得到Error [ERR_REQUIRE_ESM]: Must use import to load ES Module:

显然我遗漏了一些明显的东西。我不熟悉将 node 和 graphql 以及前端编程作为一个整体使用。但是我应该如何启动该博客文章中提到的服务器?

【问题讨论】:

你应该使用graphql订阅。你可以使用这个包graphql-redis-subscriptions 我使用的是旧节点。不过谢谢 我一年前使用过graphql websocket,但不得不切换到ws npm 包。 graphql 的 Websocket 不足以满足我的要求。 但是博客中的代码中没有使用ws吗?第 2 行是import ws from 'ws'; // yarn add ws 【参考方案1】:

好的,我只是使用旧版本的节点。更新解决了这个问题。

【讨论】:

以上是关于如何启动 websocket graphql 服务器的主要内容,如果未能解决你的问题,请参考以下文章

如何创建基本客户端以通过 websockets 使用 GraphQL 订阅

如何通过 Websocket 协议处理 GraphQL 中的文件上传?

使用 GraphQL 的 AKS 上的 Websocket 未连接

外部 WebSocket 服务器上的 Apollo-Server GraphQL 订阅

如何在 graphql-playground 中更改 websocket url(订阅)

通过 GAE 标准上的 Websockets 订阅 GraphQL 没有响应