远程上传:通过给定的网址上传文件。
我想使用blueimp
插件向我的网站添加远程上传。
我找到了这个链接:https://gist.github.com/blueimp/5075976,但我使用外部服务器上传我的文件,所以当我编写这段代码时,我收到错误:
Uncaught SecurityError: Blocked a frame with origin "http://myExternalURL.com" from accessing a frame with origin "http://www.myMainWebsite.com". Protocols, domains, and ports must match.
代码中包含url的部分:
$('#remote-file-copy').on('submit', function (e) {
e.preventDefault();
var url = $(this).find('input').val(),
iframe = $('<iframe src="javascript:false;" style="display:none;"></iframe>');
if (url) {
iframe
.prop('src', 'http://I-USE-EXTERNAL-URL/remote-file-copy.php?url=' + encodeURIComponent(url))
.appendTo(document.body);
}
});
我该如何解决?
非常感谢! 抱歉我的英文
答案 0 :(得分:1)
在<?php
remote-file-copy.php
之后立即添加此行
header("Access-Control-Allow-Origin: *");
这将告诉浏览器允许其他来源的javascript访问您的php文件中的内容,如果您只想从您的网站允许,您也可以这样做:
header("Access-Control-Allow-Origin: http://yourmaindomain.com");
更多阅读: MDN ,enable-cors.org,another question