1
我第一次使用http請求。我使用Angular。服務器正常工作 - 這是公共新聞API。我需要通過URL獲取JSON文件,如「hostname.com/article/2014/06/10/123?api-key=1234567890」。
function Ctrl($scope, $http, $templateCache) {
//some code there
$scope.load_article = function(patch) {
$http.get(patch + "?" + $scope.apikey)
.success(function(response){
result = angular.fromJson(response.data);
$scope.article = result;
}).error(function(response) {
$scope.article = "error "+ response.status;
});
};
}
但是,當我打電話load_article()示蹤表明我的結果:
Method: OPTIONS;
Status: 596 OK;
Type: text/xml;
和 「錯誤未定義」 到$ scope.article。
我的錯在哪裏?
UPD:
$http.jsonp(patch + "?" + $scope.apikey).success(function(data)){...}
將是GET JSON文件更好。
Http 596錯誤代碼通常表示您正在觸碰的api端點不存在。你確定你使用了正確的API調用嗎? – zszep
@zszep當我用api-key將補丁直接複製到瀏覽器時,它顯示我正確的json文件。 – Archarious
好的,那麼它可能是一個跨域問題。如果它通過http而不是XmlHttpRequest工作,那麼你可以嘗試使用JSONP來獲取數據。所有現代瀏覽器都通過javascript限制跨域調用。 – zszep