Him*_*rzi 5 jquery google-chrome amazon-s3 amazon-web-services cors
我有以下S3桶:http://my-bucket.s3-website-eu-west-1.amazonaws.com/
我已根据http://docs.amazonwebservices.com/AmazonS3/latest/dev/cors.html添加了CORS配置:
<CORSConfiguration>
<CORSRule>
<AllowedHeader>x-requested-with</AllowedHeader>
<AllowedHeader>*</AllowedHeader>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>POST</AllowedMethod>
</CORSRule>
<CORSRule>
<AllowedOrigin>http://*.test.com</AllowedOrigin>
<AllowedMethod>POST</AllowedMethod>
</CORSRule>
</CORSConfiguration>
Run Code Online (Sandbox Code Playgroud)
我使用jquery向我的存储桶发出一个AJAX Post请求(注意,origin是jd.test.com:8000):
$.ajax('http://my-bucket.s3-website-eu-west-1.amazonaws.com/', {
type: "POST",
data: $(":hidden", self).serializeArray(),
files: $(":file", self),
statusCode: {
204: function(){
//do something
}
}
});
Run Code Online (Sandbox Code Playgroud)
在提出请求后,我的chrome控制台抱怨:
XMLHttpRequest cannot load http://my-bucket.s3-website-eu-west-1.amazonaws.com/. Origin http://www.jd.test.com:8000 is not allowed by Access-Control-Allow-Origin.
Run Code Online (Sandbox Code Playgroud)
任何关于为什么没有提出POST请求的帮助将不胜感激.
谢谢 !
我也即将深入研究这个问题。您是否尝试过将AllowedMethod更改为PUT?文件上传是使用 PUT 而不是 POST 完成的。
- 编辑
愚蠢的我。我收到 403 禁止 PUT 请求。POST 请求给出 400 状态代码。
| 归档时间: |
|
| 查看次数: |
8404 次 |
| 最近记录: |