2016-11-15 4 views
0

Привет всем, пожалуйста, вы хотели бы мне помочь? мое приложение работает с NgResource Angular API, чтобы сделать Restfull вызовы Api Server с Java. Я выполняю базовую функцию входа.Ошибка только в Chrome: XMLHttpRequest не может загрузить URLResponse для preflight имеет недопустимый код состояния HTTP 400 NgResource-AngularJS

Функция в внешний вид контроллера, как это:

$scope.login = function() { 

     AuthService.login($scope.username, $scope.password).then(function (authenticated) { 
      $state.go('principal.table', {}, {reload: true}); 
     }, function (err) { 
      var alertPopup = $ionicPopup.alert({ 
       title: 'Login failed!', 
       template: 'Please check your credentials!' 
      }); 
     }); 
    }; 

AuthService имеет эту функцию, конечно:

var login = function(name, pw) { 
    return $q(function(resolve, reject) { 
     Login.query({user: name+"_"+pw}).$promise.then(function(user) { 
     if (usercard[0] && usercard) { 
     resolve('Login success.'); 
     } else { 
     reject('Login Failed.'); 
     }  
    }); 
    }); 
    }; 

Завод Войти выглядит следующим образом:

angular.module('login') 
.factory('Login', function($resource) { 
    return $resource('http://localhost:8080/DOGSIAPPREST/resources/Login/:user', {user:'@user'}, { 
    query:{method: "GET", isArray:true} 
    });}) 

Когда я попробуйте, когда url прямо на браузере Chrome У меня есть ответ в JSON с пользователем в массиве, но используя приложение У меня есть следующее: enter image description here

Спасибо! и с наилучшими пожеланиями !!

ответ

0

Обычно это означает, что вы пытаетесь выполнить неверный запрос. Это может означать, что вы пытаетесь выполнить POST для ресурса, сопоставленного с запросом GET, или наоборот. Кроме того, это может означать, что вы передаете данные, которые ресурс не ожидает, и, таким образом, вы передаете неверный запрос.

+0

Хорошо, я проверю это, но я не думаю, что это может быть ответ. Благодарю. –

+1

Вы пытаетесь передать данные с запросом на вход в систему. Вы не можете передавать данные с запросом на получение. Запрос на вход, вероятно, является POST, а не GET. Как правило, get может иметь параметры строки запроса, в то время как почта может иметь тело данных, которое выглядит так, как вы хотите здесь. – holtc