![](/img/trans.png)
[英]How to return transformed data from a $http.json request in angular?
[英]AngularJS $HTTP.json
我試圖從API中提取當前流的列表,並使用AngularJS迭代該信息。 當我將JSON數據直接放在js文件中時,Angular可以正常工作。 但是,當使用如下所示的http請求時,出現空白頁。 我搜索過很多東西,但是在將其應用於我的特定問題時遇到了麻煩。 任何幫助表示贊賞。 謝謝!
Http文件:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="namesCtrl">
<ul>
<li ng-repeat="x in names">
{{ x.game }}
</li>
</ul>
</div>
<script src="repeat.js"></script>
</body>
</html>
Repeat.js
var app = angular.module('myApp', []);
app.controller('namesCtrl', function($scope, $http) {
$http.jsonp("https://api.twitch.tv/kraken/streams?json_callback=JSON_CALLBACK")
.success(function(response) {$scope.names = response.streams;});
});
https://api.twitch.tv/kraken/streams?json_callback=JSON_CALLBACK
不是JSONP(它是純JSON)。
您需要一台可以進行JSONP響應的服務器,才能使用$http.jsonp()
。
好吧,使用$ http.get('url')確實可以。 我錯誤地認為“數據”對象是一個數組,並將“ [0]”傳遞給它是不正確的。 下面是代碼,它可以按照標記中的指示提取信息並重復數據。 謝謝你的幫助!
HTML:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="namesCtrl">
<ul>
<li ng-repeat="x in data.streams">
{{ x.game }}
</li>
</ul>
</div>
<script src="repeat.js"></script>
</body>
</html>
JS:
var app = angular.module('myApp', []);
app.controller('namesCtrl', function($scope, $http) {
$http.get('https://api.twitch.tv/kraken/streams?').success(
function(data, status){
$scope.data = data;
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.