我正在整合Carrierwave_Direct和Jquery文件上传.一切正常.文件直接上传到S3而没有错误.但是,浏览器无法将用户重定向到具有关键参数的新网址,例如
http://example.com?bucket=your_fog_directory&key=uploads%2Fguid%2Ffile.ext&etag=%22d41d8cd98f00b204e9800998ecf8427%22
.
在js控制台上,错误消息是
XMLHttpRequest cannot load https://example.s3.amazonaws.com/. The request was redirected to 'http://example.com/users/settings?bucket=example&key=uploads…F1389525416-2-3762%2Fexample.jpg&etag=%225a44c7ba5bbe4ec867233d67e4806848%22', which is disallowed for cross-origin requests that require preflight.
我已经在S3上设置了CORS:
http://example.herokuapp.com http://localhost:3000 PUT POST DELETE * * GET
JS代码:
$('#new_avatar_uploader').each(function(){ var form = $(this), progress_bar = $('#new_avatar_uploader').find('.progress-bar'); form.fileupload({ progressall: function (e, data) { var progress = parseInt(data.loaded / data.total * 100, 10); progress_bar.css("visibility","visible"); progress_bar.css( 'width', progress + '%' ); }, }); });
请提前帮助,谢谢.