首页 > 代码库 > iOS.访问 Web Service.同步GET请求方法

iOS.访问 Web Service.同步GET请求方法

1、字符串转换为URL字符串NSString分类

#import <Foundation/Foundation.h>@interface NSString (URLEncoding)-(NSString *)URLEncodedString;-(NSString *)URLDecodedString;@end
#import "T20140628013418NSString+URLEncoding.h"@implementation NSString (URLEncoding)- (NSString *)URLEncodedString{    NSString *result = ( NSString *)    CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,                                                              (CFStringRef)self,                                                              NULL,                                                              CFSTR("!*();+$,%#[] "),                                                              kCFStringEncodingUTF8));    return result;}- (NSString*)URLDecodedString{    NSString *result = ( NSString *)    CFBridgingRelease(CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault,                                                                              (CFStringRef)self,                                                                              CFSTR(""),                                                                              kCFStringEncodingUTF8));    return result;}@end

2、错误提示NSNumber分类

#import <Foundation/Foundation.h>@interface NSNumber (Message)-(NSString *)errorMessage;@end
#import "T20140628013418NSNumber+Message.h"@implementation NSNumber (Message)-(NSString *)errorMessage{    /*  -7 没有数据。     *  -6 日期没有输入。     *  -5 内容没有输入。     *  -4 ID没有输入。     *  -3 据访问失败。     *    -2 您的账号最多能插入10条数据。     *    -1 用户不存在。     *    0 查询成功     *    1 修改成功     */        NSString *errorStr = @"";        switch ([self integerValue]) {        case -7:            errorStr = @"没有数据。";            break;        case -6:            errorStr = @"日期没有输入。";            break;        case -5:            errorStr = @"内容没有输入。";            break;        case -4:            errorStr = @"ID没有输入。";            break;        case -3:            errorStr = @"数据访问失败。";            break;        case -2:            errorStr = @"您的账号最多能插入10条数据。";            break;        case -1:            errorStr = @"用户不存在";        default:            break;    }        return errorStr;}@end

3、获得url对象

    NSString *strURL = [[NSString alloc] initWithFormat:@"http://127.0.0.1:8080/xxx/test01.html"];    NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]];

 

4、同步get请求

NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];    NSData *data  = http://www.mamicode.com/[NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

5、-(NSMutableArray *)findAll

-(NSMutableArray *)findAll{    NSString *strURL = [[NSString alloc] initWithFormat:@"http://127.0.0.1:8080/kujizu/test01.html"];    NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]];    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];    NSData *data  =http://www.mamicode.com/ [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];        if (data =http://www.mamicode.com/= nil) {                self.listData = [[NSMutableArray alloc] init];        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"错误信息" message:@"没有数据。" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];        [alertView show];    }else{                NSDictionary *resDict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];                NSNumber *resultCodeObj = [resDict objectForKey:@"ResultCode"];        if ([resultCodeObj integerValue] >=0){                        self.listData = [resDict objectForKey:@"Record"];        } else {                        NSString *errorStr = [resultCodeObj errorMessage];            UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"错误信息" message:errorStr delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];            [alertView show];        }    }    return self.listData;}