使用 Graphcool 发出经过身份验证的查询

Issuing authenticated queries with Graphcool

我已成功设置Graph.cool Auth0 authentication and created a User through Relay as described here

接下来我想代表这个用户实际查询 graph.cool。作为第一步,我简单地手动修改了 Relay 设置以指定与最初用于创建用户相同的身份验证令牌(通过类型 AUTH_PROVIDER_AUTH0 上的 idToken):

Relay.injectNetworkLayer(
  new Relay.DefaultNetworkLayer(process.env.GRAPHQL_ENDPOINT, {
    headers: {
      Authorization: 'Bearer XXX.YYY.ZZZ',
    },
  })
);

但是,应用程序停止呈现,我只收到控制台警告 RelayPendingQueryTracker.js:153 Server response was missing for query Index。有什么提示吗?

调用 signinUser 或 createUser 突变时,有效负载中会返回一个 Graphcool 令牌。 https://www.graph.cool/docs/faq/graphcool-session-user-goij0cooqu

这是您需要在授权中使用的令牌 header 而不是 Auth0 idToken。

也许看看我们在仪表板中的操作方式也会有所帮助 https://github.com/graphcool/dashboard/blob/master/src/views/LoginView/LoginView.tsx

希望对您有所帮助!