我试图使用angularjs在我的工厂方法中调用api。
但它永远不会调用服务器端的api,这是用快速写的。
任何想法?
angular.module('ecoProject')
.factory('UserService', function($http){
+
+ var loginUser = function() {
+ $http({ method: 'POST',
+ url: '/api/getUserDetails',
+ headers: {'Content-Type': 'application/json'}
+ }).
+ success(function (data, status, headers, config) {
+ return data;
+
+ }).
+ error(function (data, status, headers, config) {
+ //hits this when unauthorized.
+ var invalid = true;
+ });
+ };
+
+ return {
+ getUsername: function() {
+ console.log(loginUser);
+ return "success";
+ }
+ };
+});
我现在使用promises实现了以下代码,它返回数据但不是我希望只是加载html
angular.module('ecoProject')
.service('UserService', function ($http, $q) {
var deferred = $q.defer();
$http.get('api/user').then(function(data){
deferred.resolve(data);
});
this.getUsername = function() {
return deferred.promise;
}
});