使用AGSJSONRequestOperation完成webservice资源的请求
发布时间:2020-12-16 23:42:48 所属栏目:安全 来源:网络整理
导读:相信大家在做iOS应用时,少不了都会有一些Web资源的请求需求。这时可以考虑网上的第三方库,比如AFNetworking、 ASIHTTPRequest 等。但是如果你恰好使用了ArcGIS.Framework,Esri已经给我们提供了一个专门处理类似请求的 Objective-C类—— AGSJSONRequestOp
相信大家在做iOS应用时,少不了都会有一些Web资源的请求需求。这时可以考虑网上的第三方库,比如AFNetworking、ASIHTTPRequest等。但是如果你恰好使用了ArcGIS.Framework,Esri已经给我们提供了一个专门处理类似请求的 Objective-C类——AGSJSONRequestOperation。 ? ? ? ? ??AGSJSONRequestOperation的使用流程: A、要求:安装了ArcGIS Runtime SDK for iOS B、使用流程: 声明 @property (nonatomic,strong) AGSJSONRequestOperation* currentJsonOp; @property (nonatomic,strong) NSOperationQueue *queue;
? ? 初始化 self.queue = [[NSOperationQueuealloc] init]; 构造请求参数
NSMutableDictionary* params = [NSMutableDictionary dictionary]; [params setObject:citycode forKey:@"citycode"]; [params setObject:wh forKey:@"queryStr"]; [params setObject:@"json" forKey:@"f"]; NSString *temURL=@"http://st.geoq.cn/geocode/xxxxx/single?"; NSURL *url = [NSURL URLWithString: [temURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; self.currentJsonOp = [[AGSJSONRequestOperation alloc]initWithURL:url queryParameters:params]; self.currentJsonOp.target = self; self.currentJsonOp.action = @selector(operation:didSucceedWithResponse:); self.currentJsonOp.errorAction = @selector(operation:didFailWithError:); [self.queue addOperation:self.currentJsonOp]; 处理请求响应 - (void)operation:(NSOperation*)op didSucceedWithResponse:(NSDictionary *)dataInfo { //NSLog(@"%@",dataInfo); }- (void)operation:(NSOperation*)op didFailWithError:(NSError *)error { UIAlertView* av = [[UIAlertView alloc] initWithTitle:@"Sorry" message:[error localizedDescription] delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; [av show]; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |