[英]How to add login api using nsjsonserilization.?
我有一个类似http://qa.networc.in:1336/api/users/app/login的api,并希望在单击登录按钮时触发该api。 我需要匹配电子邮件和密码。
- (void)viewDidLoad {
[super viewDidLoad];
name = [NSMutableArray new];
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
NSURL *url = [NSURL URLWithString:@"http://qa.networc.in:1336/api/users/app/login"];
NSURLRequest *request= [NSURLRequest requestWithURL:url];
[NSURLConnection connectionWithRequest:request delegate:self];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
-(void)connection:(NSURLConnection *)connection didReceiveResponse: (nonnull NSURLResponse *)response {
data = [[NSMutableData alloc] init];
NSLog(@"Did receive response");
}
-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)theta {
[data appendData:thedata];
NSLog(@"daata");
}
-(void)connectionDidFinishLoading:(NSURLConnection *)connection {
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
name= [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
}
-(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
UIAlertView *errorview= [[UIAlertView alloc]initWithTitle:@"Error" message:@"The download could not complete please make sure you're connected to internet" delegate:nil cancelButtonTitle:@"Dismiss" otherButtonTitles: nil];
[errorview show];
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
}
- (IBAction)login:(id)sender {
}
第1步
在.plist中添加以下详细信息
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
第2步
- (IBAction)login:(id)sender {
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://qa.networc.in:1336/api/users/app/login"]];
NSURLSession *session = [NSURLSession sharedSession];
// email": user_name, "password": password, "deviceToken":'testdata
NSString * params =[NSString stringWithFormat:@"email=%@&password=%@&deviceToken=testdata",yourEmailtextfield.text,yourpasswordtextfield.text];
request.HTTPMethod = @"POST";
request.HTTPBody =[params dataUsingEncoding:NSUTF8StringEncoding];
NSURLSessionDataTask *task = [session dataTaskWithRequest:request
completionHandler:
^(NSData *data, NSURLResponse *response, NSError *error) {
// ...
NSLog(@"Response:%@ %@\n", response, error);
if(error == nil)
{
// use NSJSON Serlizeitaion and serlize your value
NSString * text = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
NSLog(@"Data = %@",text);
}
}];
[task resume];
}
有关更多信息,请参阅本教程
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.