我正在学习AngularJS。我试图使用标准$http
服务进行RESTapi调用,但我没有得到成功的响应。我在这里做错了什么线索?
我正在调用URL(当我ping它时,URL正常呈现):http://finance.yahoo.com/webservice/v1/symbols/allcurrencies/quote?format=json
我收到的错误是:
{"data":null,"status":0,"config":{"method":"GET","transformRequest":[null],"transformResponse":[null],"url":"http://finance.yahoo.com/webservice/v1/symbols/allcurrencies/quote","params":{"format":"json"},"headers":{"Accept":"application/json, text/plain, */*"}},"statusText":""}
我的Angularjs测试代码是:
angular.element(document).ready(function(){
angular.bootstrap(document.getElementById('app2'),['app2']);
});
angular.module('app2',[])
.controller('testNamesCtrl',function($scope,$http){
$http({method:'GET',url:'http://finance.yahoo.com/webservice/v1/symbols/allcurrencies/quote',params:{format:"json"}})
.then(
function(response){
$scope.record = response.data;
$scope.record1 = response;
}, function(response){
$scope.record1 = response;
});
});
答案 0 :(得分:1)
据我了解,您尝试进行跨域请求。您可以尝试使用$http.jsonp(url)。但只有在服务器允许使用JSONP时才有效。
正如我所见,此服务器不被允许。在这种情况下,您可以在服务器上准备数据。
echo file_get_contents(url);