使用 neo4j-graphql-js 时如何访问自定义 graphQL 解析器中的请求标头?

Posted

技术标签:

【中文标题】使用 neo4j-graphql-js 时如何访问自定义 graphQL 解析器中的请求标头?【英文标题】:How to access request headers in custom graphQL resolvers when using neo4j-graphql-js? 【发布时间】:2020-10-01 17:48:09 【问题描述】:

尝试时:

const server = new ApolloServer(
  schema: schema,
  context:  req, driver, neo4jDatabase: process.env.NEO4J_DATABASE ,
  introspection: true,
  playground: true,
)

错误:req 未定义

尝试时:

const server = new ApolloServer(
  schema: schema,
  context: ( res , driver, neo4jDatabase = process.env.NEO4J_DATABASE) => (
    res, driver, neo4jDatabase
  ),
  introspection: true,
  playground: true,
)

错误:未提供 Neo4j javascript 驱动程序实例。

我已经尝试了很多不同的方式来编写它和阅读 Apollo 源代码,但都没有成功。

【问题讨论】:

【参考方案1】:

感谢这条评论https://github.com/grand-stack/graphql-auth-directives/issues/4#issuecomment-494620480解决了它

const server = new ApolloServer(
  schema,
  context: ( req ) => 
    return 
      headers: req.headers, 
      driver
     ;
  
);

它确实奏效了。

【讨论】:

以上是关于使用 neo4j-graphql-js 时如何访问自定义 graphQL 解析器中的请求标头?的主要内容,如果未能解决你的问题,请参考以下文章

grandstack graphql 开发模型

使用 React Hooks 卸载组件时如何访问状态?

使用访问者模式时如何引用子结果?

使用 LINQ 时如何返回访问拆分字符串?

使用 Facebook 登录时如何访问 quickblox 会话令牌?

如何在使用消息时访问 Kafka 标头?