2010-06-09 57 views
1

我的目標是以ajax方式上傳文件。 我用這個JavaScript庫http://valums.com/wp-content/uploads/ajax-upload/demo-jquery.htm嘗試使用ajax上傳文件時,不安全的JavaScript嘗試訪問框架

  1. 有我的網頁就像一個鏈接「上傳」例如網頁按鈕。
  2. 當我點擊它時,「打開文件」對話框打開。
  3. 我選擇文件並自動提交表格。

這是我的javascript代碼。

var upload_btn = $('#upload-opml'); 
    new AjaxUpload(upload_btn.attr('id'), { 
    action: upload_btn.attr('href'), 
    name: 'opml', 
    onComplete: function (file, response) { 
     // 
    } 
}); 

這是Ruby on Rails的服務器代碼。

def upload_opml 
    render :text => 'hello' 
end 

接頭,從Firebug的拍攝。

>> Response headers 
Server nginx/0.7.62 
Date Wed, 09 Jun 2010 19:03:28 GMT 
Content-Type text/html; charset=utf-8 
Connection keep-alive 
Etag "5d41402abc4b2a76b9719d911017c592" 
X-Runtime 18 
Content-Length 5 
Cache-Control private, max-age=0, must-revalidate 
Set-Cookie _RssWebApp_session=BAh7CDoPc2Vzc2lvbl9pZCIlMzJhMTQ0ZWZhOGM3YmIwODFhZmFmNjkwYTI1YWQ2ZjQ6EF9jc3JmX3Rva2VuIjEvZHVzdm1NOVlMTUF6bEw3cGRFT2I3RzZvcVJZUU42bCtMNS9PVVYrNHdBPToMdXNlcl9pZGkG--13f1950a9530591881404fbfab7b1246f98f0d81; path=/; HttpOnly 

>> Request headers 
Host readbox.cz 
User-Agent Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.2) Gecko/20100115 Firefox/3.6 
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language ru,en-us;q=0.7,en;q=0.3 
Accept-Encoding gzip,deflate 
Accept-Charset windows-1251,utf-8;q=0.7,*;q=0.7 
Keep-Alive 115 
Connection keep-alive 
Referer http://readbox.cz/view 
Cookie _RssWebApp_session=BAh7CDoPc2Vzc2lvbl9pZCIlMzJhMTQ0ZWZhOGM3YmIwODFhZmFmNjkwYTI1YWQ2ZjQ6EF9jc3JmX3Rva2VuIjEvZHVzdm1NOVlMTUF6bEw3cGRFT2I3RzZvcVJZUU42bCtMNS9PVVYrNHdBPToMdXNlcl9pZGkG--13f1950a9530591881404fbfab7b1246f98f0d81; login=1; APE_Cookie=%7B%22frequency%22%3A11%7D; show-tsl=0 

但在Firefox我得到一個錯誤

:!@ 8 BC http://readbox.cz(document.domain的= http://readbox.cz)> B:070 => 2 @ 07 @ 5H5 = 88 = 0> ; CG5 = 85 A2> 9AB20 HTMLDocument.readyState 87 http://readbox.cz(document.domain = 5 1K; CAB0 => 2; 5 =)。
[此錯誤打破]如果(doc.readyState & & doc.readyState!= '完整'){

在谷歌瀏覽器

不安全JavaScript嘗試與URL http://readbox.cz/subscriptions/upload_opml從幀幀訪問使用URL http://readbox.cz/view#/posts/all 。域,協議和端口必須匹配。
/javascripts/ajaxupload.js?1276107673:574
遺漏的類型錯誤:無法讀取未定義

域的特性 'readyState的' readbox.info指向127.0.0.1。這是爲了發展。

回答

0

我有同樣的問題,我解決它編輯ajaxupload庫,此承諾:

https://github.com/felipelalli/ajax-upload/commit/9307f5eb6ded1ec63eac828a7ef4b8187acb9617

我已經發出拉入請求給作者。

我在使用沙箱開發者環境(openrkocial for Orkut)時遇到了這個問題。我只是現在檢查「doc」是否未定義。上傳工作正常,但回調現在沒有答案(答案是未定義的)。

我不知道究竟是什麼原因,但我認爲這是開發環境的某種限制。

如果您想下載修復程序,請查看:https://github.com/felipelalli/ajax-upload/commits/3.9.1

相關問題