Angularjs 在服务中传递参数以搜索API
我正在尝试使用烂番茄API创建电影搜索,但我不知道如何将Angularjs 在服务中传递参数以搜索API,angularjs,json,rotten-tomatoes,Angularjs,Json,Rotten Tomatoes,我正在尝试使用烂番茄API创建电影搜索,但我不知道如何将$scope.nameFilter作为输入附加到我的服务。我想这样做: 看法 我将使用附加到控制器的函数,该函数调用传递参数的服务函数 以下是一个例子: HTML: 工厂服务 app.factory('rtAPIservice', function($http) { var rtAPI = {}; rtAPI.getMoviesAll = function(filter) { return $http({ m
$scope.nameFilter
作为输入附加到我的服务。我想这样做:
看法
我将使用附加到控制器的函数,该函数调用传递参数的服务函数 以下是一个例子: HTML: 工厂服务
app.factory('rtAPIservice', function($http) {
var rtAPI = {};
rtAPI.getMoviesAll = function(filter) {
return $http({
method: 'JSONP',
url: 'http://api.rottentomatoes.com/api/public/v1.0/movies.json?q='+ filter + '&page_limit=10&page=1&apikey=MyKey&callback=JSON_CALLBACK'
});
}
return rtAPI;
});
谢谢你的回答!:我已经这样做了,但是为了从烂番茄中获得正确的JSON,我需要在我的url中包含搜索关键字。问题是我不知道如何传递这个关键字。@ΕλένηηΜρκον:url参数
url:'http://api.rottentomatoes.com/api/public/v1.0/movies.json?q=“+filter+”&page\u limit=10&page=1&apikey=MyKey&callback=JSON\u callback'
不工作?q=filter
用于按照您的建议过滤返回的JSONI。q参数不再为null,但出于某种原因,它接受值“function”。无论我使用什么关键字,我都会得到相同的结果,就像我键入了函数一样。虽然它还不能正常工作,但它仍然是一个进步,所以。。非常感谢。
angular.module('MovieFeederApp.services', [])
.factory('rtAPIservice', function($http, $scope) {
var rtAPI = {};
rtAPI.getMoviesAll = function($scope.nameFilter) {
return $http({
method: 'JSONP',
url: 'http://api.rottentomatoes.com/api/public/v1.0/movies.json?q='+ $scope.nameFilter + '&page_limit=10&page=1&apikey=MyKey&callback=JSON_CALLBACK'
});
}
return rtAPI;
});
<input type="text" ng-model="filter" />
<button ng-click="search(filter)">Search Movie</button>
app.controller('ExampleCtrl', function($scope,rtAPIservice ){
$scope.filter = '';
$scope.filteredMovies = [];
$scope.search = function(filter){
rtAPIservice.getFilteredMovies(filter)
.then(function(data){
$scope.filteredMovies = data;
});
}
})
app.factory('rtAPIservice', function($http) {
var rtAPI = {};
rtAPI.getMoviesAll = function(filter) {
return $http({
method: 'JSONP',
url: 'http://api.rottentomatoes.com/api/public/v1.0/movies.json?q='+ filter + '&page_limit=10&page=1&apikey=MyKey&callback=JSON_CALLBACK'
});
}
return rtAPI;
});