问题标签 [absinthe-subscription]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
377 浏览

graphql - 为什么我的 Absinthe GraphQL 订阅不起作用?

我的架构:

当我做

我收到这个错误TypeError: Failed to fetch

日志:

这是我的其余设置:

用户套接字: use Absinthe.Phoenix.Socket, schema: DrawingApiWeb.Schema.Schema

端点: use Absinthe.Phoenix.Endpoint

路由器:

所有这一切都发生在我对任何上下文进行任何更改之前。无论问题是什么,它都应该在设置中。我已按照 Absinthe-GraphQL 书和 Pragmatic Studio 视频中的确切说明进行操作,并使用https://hexdocs.pm/absinthe/subscriptions.html进行了验证

还是同样的错误。提前谢谢你的帮助。

0 投票
0 回答
397 浏览

sockets - 使用 cookie 授权带有 elixir 和苦艾酒的 graphql 订阅

我正在尝试使用 cookie 使用 elixir 和苦艾酒进行授权/身份验证 graphql 订阅,我使用了以下链接:

https://nts.strzibny.name/graphql-subscriptions-with-elixir-and-absinth/

我正在尝试对用户进行身份验证以订阅正确的主题,但我无权访问订阅连接中的 cookie。为什么?

在我看到以下链接后:

https://hexdocs.pm/absinthe_phoenix/Absinthe.Phoenix.Socket.html

在我的 user_socket.ex 中,我将 user_id 作为查询参数传递,这是可行的,但它根本不安全......我可以传递我想要的 id ??!!

有人能帮我吗?

0 投票
2 回答
763 浏览

websocket - 如何使用 Absinthe (Elixir) 和 Urql 进行 graphql 订阅?

我的想法是使用 react 和 urql 构建一个客户端应用程序,以及使用 elixir 和苦艾酒构建一个 graphql api,但目前看起来它们并不能很好地结合在一起。

除了 Apollo 之外,有没有办法将 Absinthe 订阅实际用于任何其他客户端?我尝试使用 urql,但由于 ws 连接失败,出现以下错误:

WebSocket 连接到“ws://localhost:4000/socket/websocket”失败:WebSocket 握手期间出错:发送非空“Sec-WebSocket-Protocol”标头但未收到响应

到目前为止,我发现的唯一似乎与这个问题有关的是这个库 absinthe/socket-apollo-link (https://github.com/absinthe-graphql/absinthe-socket/tree/master/packages/socket -apollo-link)但它显然只适用于阿波罗。

在我失败的尝试中,我做了以下事情:

这个'subscriptions-transport-ws'我从一个教程中找到,并且在一些gh问题中提到了ws url末尾的神秘'/websocket',但它似乎有效(在将它添加到url末尾之前有根本没有ws连接)。