-1
遠程上傳:通過給定的URL上傳文件。遠程上傳(使用blueimp文件上傳插件)
我想使用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);
}
});
我該如何解決?
非常感謝! 和對不起我的英語
這不是worknig,還是同樣的錯誤。 – HtmHell
您給出的錯誤消息與跨域來源有關,我給你的代碼應該適用於從域A到域B的ajax調用,但是在iframe的情況下,請查看[iframe跨域javascript調用](http:// madskristensen.net/post/iframe-cross-domain-javascript-calls),似乎是一個很好的文章給你一些線索。 – Bor691
@ArielAharonson btw代碼生成錯誤是iframe內部的Javascript(可能包括'window.parent')而不是你發佈的代碼,如果你在我鏈接的文章中做了document.domain技巧,它仍然沒有作品發佈該代碼。如果您無法按照madskristensen的博客中的建議創建子域,則應該使用[php代理](https://github.com/softius/php-cross-domain-proxy)或者根本不要使用iframe (也許把所有的js代碼放在maindomain中,並用jsonp檢查進度?)。 – Bor691