工厂没有 return http 数据响应
Factory doesnt return http data response
我正在尝试使用下面的代码(正在运行)获取 http post 数据响应。
app.factory('LoginService', function($http, $location) {
return {
existUser: function(loginObj)
{
$http({
method: 'POST',
url: server + '/login',
headers: {'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'},
data: 'json=' + JSON.stringify(loginObj)
}).then(function successCallback(response) {
return response.data;
}, function errorCallback(response) {
console.log(response);
console.log("erro!");
});
}
}
});
在我的控制器内部,我有:
LoginService.existUser(loginObj).then(function (data){
console.log(data);
});
我得到了错误:
Cannot read property 'then' of undefined
怎么了?
您的 return response.data;
returns then
函数的结果,而不是 existUser
!修改您的代码如下:
app.factory('LoginService', function($http, $location) {
return {
existUser: function(loginObj)
{
return $http({
method: 'POST',
url: server + '/login',
headers: {'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'},
data: 'json=' + JSON.stringify(loginObj)
})
}
}
});
在这种情况下,existUser
方法 returns promise 对象具有 .then
方法
我正在尝试使用下面的代码(正在运行)获取 http post 数据响应。
app.factory('LoginService', function($http, $location) {
return {
existUser: function(loginObj)
{
$http({
method: 'POST',
url: server + '/login',
headers: {'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'},
data: 'json=' + JSON.stringify(loginObj)
}).then(function successCallback(response) {
return response.data;
}, function errorCallback(response) {
console.log(response);
console.log("erro!");
});
}
}
});
在我的控制器内部,我有:
LoginService.existUser(loginObj).then(function (data){
console.log(data);
});
我得到了错误:
Cannot read property 'then' of undefined
怎么了?
您的 return response.data;
returns then
函数的结果,而不是 existUser
!修改您的代码如下:
app.factory('LoginService', function($http, $location) {
return {
existUser: function(loginObj)
{
return $http({
method: 'POST',
url: server + '/login',
headers: {'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'},
data: 'json=' + JSON.stringify(loginObj)
})
}
}
});
在这种情况下,existUser
方法 returns promise 对象具有 .then
方法