我正在尝试实现卫星器的本地注册和登录实例。注册(注册)有效(尽管它在使用 POST 进行请求之前使用 OPTIONS 方法“预检”请求)。
现在,问题是当我尝试登录时,我得到一个 400,网络选项卡告诉我我使用了“选项”。我在这里查看了几乎所有的问题,他们建议我在服务器端设置我的权限。
因此,以下内容已添加到服务器端,以授予任何请求的权限
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Authorization"
但我仍然遇到同样的错误。
这是我的登录控制器,在模式内:
angular.module('auth').controller('LoginCtrl',function($rootScope,
$scope, $location, $localStorage, $auth, $modalInstance,
$modal){
$scope.formData = {
email:'',
password:'',
};
$scope.master = {};
$scope.update = function(user) {
$scope.master = angular.copy(user);
};
$scope.reset = function(form) {
if (form) {
form.$setPristine();
form.$setUntouched();
}
$scope.user = angular.copy($scope.master);
};
$scope.reset();
$scope.ok = function () {
$modalInstance.close();
};
$scope.cancel = function () {
$modalInstance.dismiss('cancel');
};
$scope.login = function(){
$auth.login({
email: $scope.formData.email,
password: $scope.formData.password,
grant_type: 'password'
}).then(function(res){
alert('success, WELCOME ' + res.data.user.email + '!')
}) .catch(function(err){
alert(err.message)
});
};
});
这是我的 app.js:
angular.module('app').config(function($stateProvider, $urlRouterProvider,
$authProvider,
$httpProvider, urls) {
/* Add New States Above */
$urlRouterProvider.otherwise('/home');
$authProvider.signupUrl = urls.BASE_API + '/Register';
$authProvider.loginUrl = urls.BASE + '/Token';
});
有人能帮忙吗?