У меня сервер GraphQL Apollo, работающий в AWS Fargate (ECS), я использую API Gateway (интеграция HTTP-прокси) сверху. Цель этого API - использовать Cognito Authorizer в дополнение к защищенному SSL (HTTPS).
Это работает нормально, если задействованы HTTP-операции Graphql (запрос и мутация)
Однако подписки Graphql используют веб-сокеты. Интеграция с прокси-сервером, похоже, не справляется с обновлением протокола веб-сокета.
Я пытался определить новый API веб-сокета, следуя этой документации: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html
Но, кажется, ничего не работает для меня. Я попытался определить $ connect, $ disconnect и $ default с интеграцией прокси-сервера HTTP с конечной точкой сервера Apollo, но я продолжаю получать:
Error during WebSocket handshake: Unexpected response code: 400
Возможно ли прокси для существующего API веб-сокета с помощью Amazon API Шлюз? Является ли интеграция прокси-сервера HTTP правильной интеграцией для использования?
Примечание. Реализация клиента в порядке, поскольку мои подписки работают, если я добавляю прямой URL-адрес к конечной точке веб-сокета сервера Apollo.