中文转码处理

作者: Z了个L | 来源:发表于2016-08-08 13:38 被阅读145次
    • ViewController
    // ViewController.h
    #import <UIKit/UIKit.h>
    
    @interface ViewController : UIViewController
    
    
    @end
    
    // ViewController.m
    #import "ViewController.h"
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    -(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
    {
        [self post];
    
    }
    
    -(void)get
    {
        //0.确定请求路径字符串
        //把字符串转换为URL的时候内部不能包含中文
        //http://120.25.226.186:32812/login2?username=%E5%B0%8F%E7%A0%81%E5%93%A5&pwd=520it&type=JSON
        //NSString *urlStr = @"http://120.25.226.186:32812/login2?username=%E5%B0%8F%E7%A0%81%E5%93%A5&pwd=520it&type=JSON";
    
        NSString *urlStr = @"http://120.25.226.186:32812/login2?username=故宫&pwd=123&type=JSON";
        NSLog(@"转码前 urlstr:%@",urlStr);
    
        //对中文进行转码
        urlStr  = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
        NSLog(@"转码后 urlstr:%@",urlStr);
    
        //1.确定URL
        NSURL *url = [NSURL URLWithString:urlStr];
    
        //2.创建可变的请求对象
        NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
    
        //3.发送GET请求
        [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {
    
            //4.解析数据
            NSLog(@"%@",[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]);
    
            NSLog(@"%@",connectionError);
        }];
    
    }
    
    -(void)post
    {
        //0.确定请求路径字符串
    
        NSString *urlStr = @"http://120.25.226.186:32812/login2";
    
        //1.确定URL
        NSURL *url = [NSURL URLWithString:urlStr];
    
        //2.创建可变的请求对象
        NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
    
        request.HTTPMethod = @"POST";
        request.HTTPBody = [@"username=故宫&pwd=123&type=JSON" dataUsingEncoding:NSUTF8StringEncoding];
    
        //3.发送GET请求
        [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {
    
            //4.解析数据
            NSLog(@"%@",[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]);
    
            NSLog(@"%@",connectionError);
        }];
    
    }
    
    

    相关文章

      网友评论

        本文标题:中文转码处理

        本文链接:https://www.haomeiwen.com/subject/dbkrsttx.html