ASIHTTPRequest 身份验证
身份验证,需要条件也就是一个验证的服务器端,这里采用的是一个免费的网络虚拟主机,上传一个index.php的页面进行验证,附上index.php
- (void) didFinishPostlogin:(ASIHTTPRequest *) request {
NSData *data =[request responseData]; NSString * result = [NSString stringWithUTF8String:[data bytes]]; NSString * resultString = request.responseString; NSLog(@"data:%@",result); } - (void) didFailedPostlogin:(ASIHTTPRequest *) request { NSData *data =[request responseData]; NSString * result = [NSString stringWithUTF8String:[data bytes]]; NSString * resultString = request.responseString; NSLog(@"data:%@",result); } //-------------- 验证 ------------- - (IBAction)login:(id)sender { if (inUserPwd.isFirstResponder) { [inUserPwd resignFirstResponder]; } if (inUserName.isFirstResponder) { [inUserName resignFirstResponder]; } NSURL *url = [NSURL URLWithString:@"http://***/index.php"]; self.formrequest = [ASIFormDataRequest requestWithURL:url]; [formrequest setDelegate:self]; [formrequest setRequestMethod:@"POST"]; [formrequest setPostValue:inUserName.text forKey:@"username"]; [formrequest setPostValue:inUserPwd.text forKey:@"password"]; [formrequest retryUsingSuppliedCredentials]; [formrequest setDidFailSelector:@selector(didFailedPostlogin:)]; [formrequest setDidFinishSelector:@selector(didFinishPostlogin:)]; //-------当程序进入后台时继续进行request [formrequest setShouldContinueWhenAppEntersBackground:YES]; [formrequest startAsynchronous]; [ASIHTTPRequest setSessionCookies:nil]; }
<?php if($_POST['username'] == "111" && $_POST['password'] == "222") { echo '{"yes":"sucess"}'; echo '<script>';#调用javascript的跳转和弹窗 echo "alert('登录成功'); location.href='http://baidu.com'; "; echo '</script>'; exit();#停止程序的执行 }else { echo '{"error":"failed"}'; }; ?>复制到txt文件,保存为index.php,上传到虚拟主机即可!!!