NSURLConnection-中国語URL処理
1724 ワード
urlの中に直接中国語があって、何の処理もしないと解析できなくて、空に戻ります。トランスコードが必要です
// URL
urlStr = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
GET- (void)get
{
// 0.
NSString *urlStr = @"http://120.25.226.186:32812/login2?username= &pwd=520it";
// URL
urlStr = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString:urlStr];
// 1.
NSURLRequest *request = [NSURLRequest requestWithURL:url];
// 2.
[NSURLConnection sendAsynchronousRequest:request queue:[[NSOperationQueue alloc] init] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
// 3. ( )
NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@", string);
}];
}
POST- (void)post
{
// 0.
NSString *urlStr = @"http://120.25.226.186:32812/login2";
NSURL *url = [NSURL URLWithString:urlStr];
// 1.
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
request.HTTPMethod = @"POST";
request.HTTPBody = [@"username= &pwd=520it" dataUsingEncoding:NSUTF8StringEncoding];
// 2.
[NSURLConnection sendAsynchronousRequest:request queue:[[NSOperationQueue alloc] init] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
// 3. ( )
NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@", string);
}];
}