-1

i making a one project in AngularJs for studing but i find one error:

Error: $http.post(...).success is not a function authFactory.login@http://localhost:3000/app/services/authService.js:8:10 vm.doLogin@http://localhost:3000/app/controllers/mainController.js:20:3

code below

Controller

   vm.doLogin  = function(){
            vm.processing = true;
            vm.error = '';
            Auth.login(vm.loginData.username, vm.loginData.password)
            .success(function(data){
                vm.processing = false;
                Auth.getUser().then(function(data){
                    vm.user = data.data;
                });
                if (data.success) {
                    $location.path('/');
                }else{
                    vm.error = data.message;
                }
            });
        }

Services

    authFactory.login = function(username, password){
        return $http.post('/api/login',{
            username: username,
            password: password
        })
        .success(function(data){
            AuthToken.setToken(data.token);
            return data;
        })
    },

thanks for listening.

2 Answers2

0
authFactory.login = function(username, password){
  $http.post('/api/login',{
    username: username,
    password: password
  }).then(function success(data){
    //Some code for success.
  }, function error(err){
    console.log(err)
  });
 },

Access the data with .then instead of .success

Josh
  • 1,455
  • 19
  • 33
0

Controller

      vm.doLogin  = function(){
            vm.processing = true;
            vm.error = '';
            Auth.login(vm.loginData.username, vm.loginData.password)
            .then(function(data){
                vm.processing = false;
                Auth.getUser().then(function(data){
                    vm.user = data.data;
                });
                if (data.success) {
                    $location.path('/');
                }else{
                    vm.error = data.message;
                }
            });
        }

Services

  authFactory.login = function(username, password){
        return $http.post('/api/login',{
            username: username,
            password: password
        })
        .then(function(data){
            AuthToken.setToken(data.token);
            return data;
        })
    },
Pramod Patil
  • 2,704
  • 2
  • 14
  • 20