我使用这种服务模式从DB获取评论:
.service('getComArt', function($http) {
delete $http.defaults.headers.common['X-Requested-With'];
this.getData = function(callbackFunc) {
$http.get('http://www.domain.it/commenct.php')
.success(function(data) {
callbackFunc(data)
})
.error(function() {
alert("Error!")
})
}
})
是否可以调用服务添加控制器采用的参数? 例如,如果我将使用相同的服务,但只提取id = xxxx!
的hte注释答案 0 :(得分:0)
您可以将参数传递给$http.get
,如下所示:
$http.get(URL, { params: { id: myId } }).success(...).error(...)
您的参数将被$http
转换为queryString,并将被发送到服务器。
答案 1 :(得分:0)
如果您只想通过传递参数来获取,您只需要连接到URL,否则如果您的方法是POST,则必须定义数据
得到:
$http.get('http://www.domain.it/commenct.php/data1/data2')
发布:
var data = {name:'John', password : '1234'}
$http.post('http://www.domain.it/commenct.php/', data).success(successCallback);
答案 2 :(得分:0)
好的,我认为解释不好!所以这就是解决方案:
创建工厂以进行$ http调用
.factory('getContent', function($http) {
return function(id){
return $http({
method: 'GET',
url: 'http://www.domain.it/page.php',
params: {id:id}
});
}
})
然后在控制器中:
getContent(id).success(
function (data) {$scope.items = data}
);