1 #import "ViewController.h"
 2 
 3 @interface ViewController ()
 4 
 5 @end
 6 
 7 @implementation ViewController
 8 
 9 #pragma mark ----------------------
10 #pragma mark Events
11 -(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
12 {
13     [self post];
14 }
15 
16 #pragma mark ----------------------
17 #pragma mark Methods
18 -(void)get
19 {
20     
21     NSString *urlStr = @"http://120.25.226.186:32812/login2?username=小码哥&pwd=520it&type=JSON";
22     
23     NSLog(@"转码前: %@",urlStr);
24     
25     //中文转码处理:请求接口有中文
26     urlStr =  [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
27     
28     
29     NSLog(@"转码后: %@",urlStr);
30     
31     //1.url
32     NSURL *url = [NSURL URLWithString:urlStr];
33     
34     //http://120.25.226.186:32812/login2?username=%E5%B0%8F%E7%A0%81%E5%93%A5&pwd=520it&type=JSON
35     
36     NSLog(@"url------%@",url);
37     
38     //2.urlrequest
39     NSURLRequest *request = [NSURLRequest requestWithURL:url];
40     
41     //3.connect
42     [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {
43         
44         
45         //容错处理
46         if (connectionError) {
47             NSLog(@"%@",connectionError);
48             return ;
49         }
50         //4.解析
51         NSLog(@"%@",[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]);
52     }];
53 
54 }
55 
56 -(void)post
57 {
58     //观察URL中是否有中文,如果有中文则需要转码
59     NSString *urlStr = @"http://120.25.226.186:32812/login2";
60     
61     //username=小码哥&pwd=520it&type=JSON
62     //1.url
63     NSURL *url = [NSURL URLWithString:urlStr];
64     
65     //2.urlrequest
66     NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
67     
68     //2.1 post
69     request.HTTPMethod = @"POST";
70     
71     //2.2 body
72     request.HTTPBody = [@"username=小码哥&pwd=520it&type=JSON" dataUsingEncoding:NSUTF8StringEncoding];
73     
74     //3.connect
75     [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {
76         
77         //容错处理
78         if (connectionError) {
79             NSLog(@"%@",connectionError);
80             return ;
81         }
82         //4.解析
83         NSLog(@"%@",[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]);
84     }];
85 
86 }
87 @end

 

posted on 2018-07-11 10:32  懂事长qingzZ  阅读(548)  评论(0编辑  收藏  举报