我正在研究一个ELB监控应用程序,我想用JS构建并直接在S3中托管.我没有JS的经验,我很难掌握CORS.
我已经成功为我的浏览器创建了一个SDK版本(http://docs.aws.amazon.com/AWSJavaScriptSDK/guide/browser-building.html),其中包括ELB API支持.
我已将Amazon登录(http://docs.aws.amazon.com/AWSJavaScriptSDK/guide/browser-configuring-wif.html)与我的脚本集成,并且我已将其附加到IAM WebIdentity角色.
我打电话的时候
elb.describeInstanceHealth(elbRequestParams).on('success', describeInstanceHealthCallback).send();
Run Code Online (Sandbox Code Playgroud)
我在Javascript控制台中收到错误
XMLHttpRequest cannot load 'elasticloadbalancing.eu-west-1.amazonaws.com/'. The request was redirected to 'aws.amazon.com/elasticloadbalancing', which is disallowed for cross-origin requests that require preflight.
Run Code Online (Sandbox Code Playgroud)
我找不到任何明确的文档,我正在尝试做的事情不会起作用,但是,我承认我对文档中的一些术语感到困惑,而且我在之前的应用程序中没有使用CORS的经验.重新开始.我认为如果大多数服务不是CORS意识的,那么浏览器的整个JS-SDK有点多余.
我可以通过在我的Chrome浏览器中禁用网络安全来实现这一点,显然这不是一个好的解决方法,但会告诉我CORS是问题.
是否有人熟悉这种方法,这是我在S3上托管的问题,或者,我是否会从任何服务器出现此问题?我应该使用CORS配置我的S3存储桶,还是在'elasticloadbalancing.eu-west-1.amazonaws.com'端点上没有CORS策略?
谢谢
安德鲁
javascript amazon-s3 amazon-ec2 amazon-web-services amazon-elb