我正在构建我的第一个离子应用程序,我的一个承诺存在问题。
应用程序与REST api进行对话登录和注册,登录部分可以工作,但是每次填写表单并提交时我都会收到错误消息,即使用户已创建(我可以看到他)在api的数据库中)我无法弄清楚为什么,即使承诺得到解决,我仍然会收到错误信息。
controller.js代码:
wannaPlay.controller('RegisterCtrl', function($scope, AuthService, $ionicPopup, $state) {
$scope.player = {
firstName: '',
lastName: '',
password: '',
email: ''
};
$scope.signup = function() {
AuthService.register($scope.player).then(function(msg) {
$state.go('outside.login');
var alertPopup = $ionicPopup.alert({
title: 'Enregistrement effectué !',
template: msg
});
}, function(errMsg) {
var alertPopup = $ionicPopup.alert({
title: 'Erreur lors de l\'enregistrement !',
template: errMsg
});
});
};
})
services.js代码:
var register = function(player) {
return $q(function(resolve, reject) {
$http.post(API_ENDPOINT.url + '/playersignup', player).then(function(result) {
if (result.data.succes) {
resolve(result.data.msg);
} else {
reject(result.data.msg);
}
});
});
};
答案 0 :(得分:1)
REST api是否真的返回一个名为“成功”的布尔值,而不是“成功”?
也许它就是那个错字。否则你应该考虑使用logmessages或断点来查看你从REST后端收到的内容,如下所示:
console.log(result);
if (result.data.succes) {
console.log("success");
resolve(result.data.msg);
} else {
console.log("error");
reject(result.data.msg);
}