我正在用Ionic + Angular + Codeigniter做项目。 当我做auth登录Api时,形成Angular做双帖
这是我的Login.html
<ion-view view-title="Login" hide-nav-bar="true">
<ion-content class="login">
<img src="img/logo.png" alt="">
<form ng-submit="saveConn()">
<div class="list list-inset">
<label class="item item-input">
<input type="text" placeholder="Username" ng-model="config.username">
</label>
<label class="item item-input">
<input type="password" placeholder="Password" ng-model="config.password">
</label>
<button class="button button-full button-assertive" name="button">Masuk</button>
</form>
</div>
</ion-content>
</ion-view>
这是My Controller.js
$scope.saveConn = function() {
$scope.config = {};
$scope.config.username = this.config.username;
$scope.config.password = this.config.password;
$scope.bList = {};
$ionicLoading.show({
template: 'Checking server connection...',
showBackdrop: true
});
var config = {
method: 'POST',
url: 'http://yourcurrentsite.com/panel/Api/Login',
headers: {
'Content-Type': 'application/json'
},
timeout: 5000,
data: $scope.config,
};
event.preventDefault();
$http(config).
then(function(response) {
$ionicLoading.hide();
if (response.Success == 'true') {
$location.path("/home");
} else {
$ionicLoading.show({
template: 'Username atau Password Salah',
showBackdrop: true
});
}
});
}
这是我目前登录的Codeigniter Api:
public function Login()
{
$obj = json_decode(file_get_contents('php://input'));
if ($this->Prospect->check_user($obj->username, md5($obj->password)) === TRUE)
{
$response = array(
'Success' => true,
'Info' => 'Login Sukses');
}else
{
$response = array(
'Success' => false,
'Info' => 'Username atau Password Salah');
}
echo $this->json_prefix . json_encode($response);
}
我转到Chrome控制台并切换到“网络”并看到登录Api被调用两次,第一个状态为false,第二个状态为成功(我输入用户名和密码正确)。
任何帮助都会有所帮助。
修改
第1次生: {成功:错误,信息:“用户名和密码不匹配”,用户名:null,密码:null}
第二次生: {成功:真实,信息:“登录Sukses”,用户名:“edwin”,密码:“caitlin”}