gpt4 book ai didi

express - CORS 不适用于 apollo-server-express

转载 作者:行者123 更新时间:2023-12-04 11:31:13 28 4
gpt4 key购买 nike

包裹:阿波罗服务器 express

版本: v2.6.0
问题: CORS 设置未生效。

向阿波罗报告?:是的,Issue 3058

说明:从我们的 react 客户端,我们开始发送 apollographql-client-name & apollographql-client-version better client awareness 的标题在阿波罗引擎中。
Access to fetch at 'https://something.com/graphql' from origin 'http://localhost:3000' has been blocked by CORS policy: Request header field apollographql-client-name is not allowed by Access-Control-Allow-Headers in preflight response.
我们收到以上 CORS错误。我们启用了 cors在 Apollo Server 上通过 express 中间件传递 cors: true .出于某种原因,这种变化没有任何区别。我们继续收到上述错误。

const server: ApolloServer = new ApolloServer({
...
...
});

const app: Application = express();

server.applyMiddleware({
app,
cors: true,
path: '/graphql',
});
  • 我们有 nginx坐在前面,它确实收到请求并转发到 Apollo 服务器。
  • cors: true默认情况下启用一切?
  • 我们尝试非常具体,但这也无济于事。
  • cors: {
    origin: true,
    allowedHeaders: ['Authorization', 'Content-Type', 'apollographql-client-name']
    },

    欢迎任何意见和建议!

    最佳答案

    问题已解决。

    我们在 Apollo Server 之上有 kubernetes 入口层这就是导致变化没有反射(reflect)出来的原因。我们启用后 cors在 nginx 入口上,我们能够成功调用。

    关于express - CORS 不适用于 apollo-server-express,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57104464/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com