在服务器上登录注册的实现
来源:互联网 发布:魔镜数据准确吗 编辑:程序博客网 时间:2024/06/06 00:07
- (IBAction)loginPress:(id)sender { NSString *name = self.nameField.text; NSString *password = self.passwordField.text; NSString* pathName=[[NSUserDefaults standardUserDefaults] objectForKey:@"NAME"]; if (![pathName isEqualToString:name]) { [[NSUserDefaults standardUserDefaults]removeObjectForKey:@"NAME"]; [[NSUserDefaults standardUserDefaults]synchronize]; } NSURL *url = [NSURL URLWithString:@"http://192.168.0.251:8080/service/userlogin"]; ASIFormDataRequest * request = [[ASIFormDataRequest alloc]initWithURL:url]; [request setPostValue:name forKey:@"user_name"]; [request setPostValue:password forKey:@"user_password"]; [request startSynchronous]; NSError *error = [request error]; if (!error) { NSString *responeString = [request responseString]; NSLog(@"responseString = %@",responeString); NSRange range = [responeString rangeOfString:@"<status>"]; NSString *str = [responeString substringWithRange:NSMakeRange(range.location+8, 1)]; NSLog(@"str = %@",str); if ([str intValue] == 1) {// 登录成功后的跳转页面的实现方法 [self enterMainView]; [[NSUserDefaults standardUserDefaults] setObject:name forKey:@"NAME"]; [[NSUserDefaults standardUserDefaults]synchronize]; NSLog(@"login success"); }else { NSRange startRange = [responeString rangeOfString:@"<message>"]; NSRange endRange = [responeString rangeOfString:@"</message>"]; NSString *errorMessage = [responeString substringWithRange:NSMakeRange(startRange.location+9, endRange.location-startRange.location-9)]; UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"登录失败" message:errorMessage delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil]; [alert show]; [alert release]; return; } }else { UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"登录失败" message:@"请检查你的网络连接" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alertView show]; [alertView release]; return; }}- (IBAction)resignPress:(id)sender { if([self.nameField.text length]<6||[self.nameField.text length]>20){ UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"警告" message:@"长度必须大于6小于20" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil]; [alert show]; [alert release]; }else if ([self.passwordField.text length]<6||[self.passwordField.text length]>20) { UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"警告" message:@"长度必须大于6小于20" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil]; [alert show]; [alert release]; }else { NSURL *url = [NSURL URLWithString:@"http://192.168.0.251:8080/service/registerUser"]; ASIFormDataRequest *registerRequest = [[ASIFormDataRequest alloc]initWithURL:url]; [registerRequest setPostValue:self.nameField.text forKey:@"user_name"]; [registerRequest setPostValue:self.passwordField.text forKey:@"user_password"]; [registerRequest startSynchronous]; NSError *error = [registerRequest error]; if (!error) { NSString *response = [registerRequest responseString]; NSRange range = [response rangeOfString:@"<status>"]; NSString *str = [response substringWithRange:NSMakeRange(range.location+8, 1)]; if ([str intValue] == 1) { UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"注册成功" message:@"用户注册成功" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil]; [alert show]; [self.passwordField resignFirstResponder]; [alert release]; }else{ NSRange startRange = [response rangeOfString:@"<message>"]; NSRange endRange = [response rangeOfString:@"</message>"]; NSString *errorMessage = [response substringWithRange:NSMakeRange(startRange.location+9, endRange.location-startRange.location-9)]; UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"错误信息" message:errorMessage delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alert show]; [alert release]; } }else { UIAlertView* alert=[[UIAlertView alloc]initWithTitle:@"请求发生错误" message:@"Error" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alert show]; [alert release]; return; } }}