我在网站上设置了FineUploader,并且我添加了一个复选框,允许用户在需要时使用HTTPS上传文件。
不幸的是,如果用户使用http访问该站点,然后尝试使用ssl,则会出错,我认为是因为CORS问题。我认为这是一个CORS问题,因为如果我使用https访问该网站并尝试使用ssl上传它可以正常工作。
我发现some documentation关于启用CORS支持,但看起来你需要这样做,所以只会发出CORS请求或者不会发出任何请求。在我的情况下,有时会有CORS请求而不是其他人。
有没有人知道这方面的好工作?我是否应该在单击复选框时使用HTTPS重新加载整个页面?
答案 0 :(得分:4)
如果您直接上传到亚马逊s3 ,请参阅official docs中的说明,“也支持SSL,在这种情况下,您的endpoint
地址必须以uploaderpage.html文件中的脚本中的https://
“开头。
request: {
endpoint: 'https://mybucket.s3.amazonaws.com',
// Note that "https://" added before bucket name, to work over https
accessKey: 'AKIAblablabla' // as per the specific IAM account
},
答案 1 :(得分:0)
重申我在评论中提到的内容(以便其他人可以轻松看到这一点)......
也许您可以在用户选择HTTP或HTTPS作为上传协议后实例化Fine Uploader。如果必须,您可以通过expected
选项的cors
属性启用CORS功能。请记住,在处理CORS请求时,您必须解决服务器端的一些细节问题,尤其是涉及IE9或更早版本时。有关详细信息,请参阅my blog post on the CORS feature。