Cloudfront中的SPA发布请求

问题描述 投票:0回答:2

我创建了一个具有两个起源(s3 bucket和aws apigateway)的cloudfront发行版。 s3存储桶成功为Elm spa服务,但是当我尝试通过SPA向我的api网关发送发布请求时,我收到403。这是我的elm发布请求:

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
    }
amazon-web-services post single-page-application aws-api-gateway elm
2个回答
0
投票

[通常,HTTP 403表示拒绝访问,对于您而言,我认为您的网站域和API域是不同的。因此,由于“跨域请求被阻止”错误,此访问可能被拒绝。

如果是这种情况,则应在API资源方法上启用CORS

参考:https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html


0
投票

我解决了它:pastebin.com/8AujUXZg基本上,我自己在cloudfront中设置了一个简单的API网关,具体步骤如下:advancedweb.hu/how-to-use-api-gateway-with-cloudfront您必须注意path_pattern是什么指定为Cloud Front会自动为您构造网址

© www.soinside.com 2019 - 2024. All rights reserved.