GraphQL中的查看器字段是什么意思?

西贝柳斯·塞拉菲尼(Sibelius Seraphini):

viewerGraphQL中的根查询字段的目的是什么

根据本文viewer可以用来接受令牌参数,以便我们可以看到当前登录的用户。

我应该如何实施?

艾哈迈德·费迪斯(Ahmad Ferdous):

viewer根查询字段的目的

viewer不是GraphQL或特定于Relay的东西。大多数Web应用程序出于其用户或查看者的某些目的。可以对提供给用户的各种数据进行建模的顶级实体称为viewer您也可以命名user例如,“ 中继待办事项”示例具有一个viewer根查询字段:

viewer: {
  type: GraphQLUser,
  resolve: () => getViewer(),
},

我们也可能没有viewer例如,“ 中继starwars”示例没有任何viewer根查询字段。

简而言之,将其viewer作为GraphQL模式的根查询字段使我们能够基于当前用户提供数据。

实现:如何与查看器一起使用身份验证令牌

我的回答遵循您提到的文章中已经描述的内容。这些步骤是:

  1. 在服务器端,创建一个变体以获得身份验证令牌。命名吧LoginMutation此突变的输入是用户凭据,输出是身份验证令牌。

  2. 在客户端,如果使用中继框架,请实现客户端更改。突变成功后,存储身份验证令牌。

  3. 在客户端中继代码上,authTokenviewer查询添加参数的值authToken是成功登录突变后收到的身份验证令牌。

替代

如本文中已经提到的,验证用户身份的另一种方法是在GraphQL之外进行验证。您可能希望看到两个优秀的答案,这个有关详细信息。

乔纳斯·赫尔弗(Jonas Helfer)撰写了一个分为两部分的文章,您会发现它非常有用:第1 部分第2部分

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章