如何使用中继设置cookie?

时间:2019-07-08 22:07:49

标签: cookies graphql graphql-js relayjs relay

我有明确的js服务器代码:

...
const server = new GraphQLServer({
  typeDefs: `schema.graphql`,
  resolvers,
  context: context => {
    let cookie = get(context, 'request.headers.cookie');
    return { ...context, cookie, pubsub };
  },
});

这样我可以将cookie附加到解析程序的请求上:

...
method: 'GET',
headers: {
  cookie: context.cookie,
},

现在,我希望能够使用Relay(作为GraphQL客户端),并且还希望能够将cookie附加到Relay的请求中。

我找到了similar question,但我不清楚在哪里可以插入该代码:

Relay.injectNetworkLayer(
  new Relay.DefaultNetworkLayer('/graphql', {
    credentials: 'same-origin',
  })
);

因为我没有在Relay中导入Environment.js

更新:我尝试添加

import { Relay, graphql, QueryRenderer } from 'react-relay';
Relay.injectNetworkLayer(
  new Relay.DefaultNetworkLayer('http://example.com/graphql', {
    credentials: 'same-origin',
  })
);

发送到我发送GraphQL查询的文件(例如client.js),但它表示Relay未定义

更新#2:this repo看起来很有趣。

0 个答案:

没有答案