СПА-запросы в облачной среде - PullRequest
0 голосов
/ 18 января 2020

Я создал дистрибутив облачного фронта с двумя источниками (s3 bucket и aws apigateway). Ведро s3 успешно обслуживает мой Elm spa, но когда я пытаюсь отправить почтовый запрос через SPA на мой API-шлюз, я получаю 403. Это мой почтовый запрос:

testReq : Cmd Msg
testReq =
  request
    { method = "POST"
    , headers = []
    , url = "https://xxxxxxxxxx.cloudfront.net/api/testy/gettalent"
    , body = jsonBody testBody
    , expect = Http.expectWhatever Resp
    , timeout = Nothing
    , tracker = Nothing
    }

1 Ответ

0 голосов
/ 18 января 2020

Обычно HTTP 403 означает отказ в доступе. В вашем случае я считаю, что домен вашего сайта и домены API различаются. Поэтому может быть отказано в доступе из-за ошибки «Cross-Origin Request Blocked».

, если это так, вы должны включить CORS в своем методе ресурса API.

Ссылка: https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html

...