Я новичок в GraphQL
и пытаюсь создать приложение без сервера, используя apollo-server-lambda
и API Gateway
. При попытке получить доступ к данным из клиента, это вызывает проблему CORS, но прекрасно работает в Postman. Я потратил много времени на поиск решений около inte rnet, но даже после нескольких попыток решения, похоже, не работает. Это ошибка, с которой я сталкиваюсь:
И я уже настроил источник разрешения из бэкэнда. Вот код:
const { ApolloServer } = require('apollo-server-lambda');
const server = new ApolloServer({
typeDefs: schema,
resolvers,
context: ({ event, context }) => {
return {
headers: event.headers,
functionName: context.functionName,
event,
context,
};
}
});
const graphqlHandler = server.createHandler({
cors: {
origin: '*',
methods: 'OPTIONS, POST, GET',
allowedHeaders: 'Origin, Content-Type, Accept'
});
Интересно то, что предполетная проверка, OPTIONS
запрос проходит, но фактический запрос POST
не проходит bcoz, равный cors
. Заголовки ответа имеют access-control-allow-origin: *
.
Я даже пытался включить Cors из шлюза API, но без улучшений.
Я не знаю, где я go неправильно или что я пропустил. Было бы хорошо, если бы кто-то мог помочь мне с этим вопросом. Заранее спасибо.