先在 XSHttpTool.h 文件中设置主体Api
例如你要访问javascript http://www.xsdota.com/PhalApi/Public/demo/?service=User.AppList
你应该这样设置:javascript static NSString *const HOST_ADDRESS = @"http://www.xsdota.com/PhalApi/Public/demo"; static NSString *const EXTRA_STR = @"?service=";
根据具体的需求可以灵活修改,这两个字符串就是拼接作用.
NSString *URLStr = @"User.AppList";
[XSHttpTool GET:URLStr param:nil success:^(id responseObject) {
NSLog(@"%@",responseObject);
} failure:^(NSError *error) {
NSLog(@"%@",error);
}];
对于不同主机的api,直接请求URL也是可以的,不过要以http或https开头才能生效javascript NSString *URLStr = @"http://www.xsdota.com/PhalApi/Public/demo/?service=User.AppList"; [XSHttpTool GET:URLStr param:nil success:^(id responseObject) { NSLog(@"%@",responseObject); } failure:^(NSError *error) { NSLog(@"%@",error); }];
默认使用内存缓存,若要支持硬盘缓存需要在AppDelegate中的javascript - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中添加: NSURLCache *URLCache = [[NSURLCache alloc] initWithMemoryCapacity:4 * 1024 * 1024 diskCapacity:20 * 1024 * 1024 diskPath:nil]; [NSURLCache setSharedURLCache:URLCache];
缓存默认是以sqlite文件为载体存在于app的cache目录下,若要对缓存进行更进一步的操作,建议带上自己的diskPath,便于管理.
NSDictionary *params = @{@"userName" : @"xiaos",
@"password" : @"111111" };
[XSHttpTool POST:@"User.TimeLines" param:params success:^(id responseObject) {
NSLog(@"%@",responseObject);
} failure:^(NSError *error) {
NSLog(@"%@",error);
}];
NSData *strData = [@"hello" dataUsingEncoding:NSUTF8StringEncoding];
[XSHttpTool UpLoadData:strData to:@"User.TimeLines" withParamName:nil fileName:@"file" mimeType:@"text/html" param:nil success:^(id responseObject) {
NSLog(@"%@",responseObject);
} failure:^(NSError *error) {
NSLog(@"%@",error);
} uploadProgress:^(float uploadPercent) {
NSLog(@"%f",uploadPercent);
}];
NSArray *images = @[[UIImage imageNamed:@"0"],
[UIImage imageNamed:@"1"],
[UIImage imageNamed:@"2"]
];
[XSHttpTool upLoadImages:images to:@"User.UpImages" withParamName:nil ratio:0.1f param:nil success:^(id responseObject) {
NSLog(@"%@",responseObject);
} failure:^(NSError *error) {
NSLog(@"%@",error);
} uploadProgress:^(float uploadPercent) {
NSLog(@"%f",uploadPercent);
}];