我有一個小問題,不能檢索csv響應。無法通過ajax請求獲取CSV文本
有可以在這裏找到link to csv
我想檢索該數據爲csv,但有一個與在效應初探特殊字符的問題。
我successfuly收到的數據,但是隨後的jQuery試圖對其進行解碼並通過語法錯誤: 我的要求是:
$.ajax({
url: 'http://toolserver.org/~daniel/WikiSense/Contributors.php?wikilang=en&wikifam=.wikipedia.org&page=Cloud+computing&since=&until=&grouped=on&order=-edit_count&max=1000&order=-edit_count&format=csv',
dataType: "script",
success: function(data){
alert('success');
},
error: function(test1, test2, test3) {
alert('error');
}
});
的誤差(原子%字符指向)
SyntaxError: syntax error
1004+%28922%2F82%29,SamJohnston,2008-07-26+09%3A40,2013-03-07+18%
我也嘗試將dataType設置爲文本以便不解碼數據。在這種情況下,我得到了ajax請求的錯誤。
$.ajax({
url: 'http://toolserver.org/~daniel/WikiSense/Contributors.php?wikilang=en&wikifam=.wikipedia.org&page=Cloud+computing&since=&until=&grouped=on&order=-edit_count&max=1000&order=-edit_count&format=csv',
dataType: "text",
success: function(data){
alert('success');
},
error: function(test1, test2, test3) {
alert('error');
}
});
我試圖與阿賈克斯進行實驗()的contentType參數,數據類型scriptCharset等它沒有幫助。
每當我遇到這個交叉來源問題時。在這種情況下,它最終是一個簡單的純文本,我試圖檢索。這可能是什麼原因違反了交叉來源政策?把這個URL放到瀏覽器中並顯示這個純文本有什麼不同?不幸的是服務器不在我的控制之下。 – eveferon 2013-03-25 08:15:59
@eveferon:用戶從完全不同的位置加載請求資源的網頁與用戶自己做的網頁(通過將URL粘貼到地址欄中)之間存在巨大差異。 SOP有幾個原因,您可能會發現[此問題及其答案](http://stackoverflow.com/questions/1830050/why-same-origin-policy-for-xmlhttprequest)有幫助。 – 2013-03-25 08:35:39
謝謝你的回答。我確信有很多人想知道同一個問題。因此,針對具有相同問題的人的簡化消息是:如果您的瀏覽器顯示來自外部域的內容並且有權訪問相應的對象,則這並不一定意味着您可以通過編程方式訪問它。 – eveferon 2013-03-25 14:30:08