我正在尝试按照tutorial来了解如何创建一个阅读器,但它似乎并没有起作用。具体来说,$http.jsonp(...)
调用似乎不起作用。它挂起大约20秒然后只返回一个GET错误。
这是完整的Angular代码。
var app = angular.module('RSSFeedApp', []);
app.controller("FeedCtrl", ['$scope','FeedService', function ($scope,Feed) {
$scope.loadButonText="Load";
$scope.feedSrc="http://sports.espn.go.com/espn/rss/news";
$scope.loadFeed=function(e){
Feed.parseFeed($scope.feedSrc).then(function(res){
$scope.loadButonText=angular.element(e.target).text();
$scope.feeds=res.data.responseData.feed.entries;
});
}
}]);
app.factory('FeedService', ['$http', function($http){
return {
parseFeed : function(url) {
return $http.jsonp('//ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=50&callback=JSON_CALLBACK&q='+ encodeURIComponent(url));
}
}
}])
是否有一种不同/更好的方式来处理角度的RSS源,或者我只是遗漏了一些明显的东西?
答案 0 :(得分:0)
想出来。
我的应用程序尚未在任何外部服务器上托管,而是当前正在运行我的机器并且我通过浏览器访问文件位置。
例如:
file:///C:/Users/...
对//ajax.googleapis...
的jQuery调用然后路由到文件位置,而不是网址。将//ajax.googleapis...
更改为https://ajax.googleapis...
会修复此问题。
简单的错误,但我想是容易忽视的。
答案 1 :(得分:-1)
我编写了一个模块,并提供了一个在AngularJS应用中集成Google Feed API的示例。您可以查看文章here。