0

我正在嘗試向我的角度控制器中的google fusion表獲取請求。

$http.get(url) 
    .success(function(data) { 
     //Do stuff with data 
    }) 

這工作在火狐,Chrome,Safari和IE10 +然而,在IE9(對此我requried支持)請求失敗,甚至發送和控制檯顯示access is denied。我已經看過其他的stackoverflow答案,我相信它與跨源請求有關。我試過This stackoverflow answer無濟於事。

我設法解決了現在使用下面的jQuery的問題。不過,我寧願在可能的情況下使用角庫。我也想知道爲什麼下面的工作和我的角度$http請求不。

$.ajax({ 
    url: urlForId.join(''), 
    dataType: 'jsonp', 
    success: function(data) { 
    //Do stuff with data 
    } 
}); 

回答

1

您應該使用)的角度$ http.jsonp(請求,而不是$ http.get()。

JSONP或「帶填充的JSON」是允許從不同域下的服務器(也稱爲「跨源請求」)請求數據的通信技術。這是你在jQuery AJAX請求中使用的。

https://docs.angularjs.org/api/ng/service/$http#jsonp

+0

謝謝,我其實試過$ http.jsonp()請求,但在我趕我忘了正確設置回調處理程序。你的回答證實,這是我應該使用的,並且讓我看起來更接近。 – Jags