当前位置: 首页 > news >正文

net域名大网站公司简介模板100字范文

net域名大网站,公司简介模板100字范文,网站备案是干嘛的,重庆新闻发布会AFNetworking是一个轻量级的iOS网络通信类库#xff0c;继ASI类库不在更新之后开发者们有一套不错选择#xff1b; AFNetworking类库和使用教程: https://github.com/AFNetworking/AFNetworking 如果想深入研究有官方文档介绍:http://afnetworking.github.com/AFNetworking/ … AFNetworking是一个轻量级的iOS网络通信类库继ASI类库不在更新之后开发者们有一套不错选择 AFNetworking类库×××和使用教程: https://github.com/AFNetworking/AFNetworking 如果想深入研究有官方文档介绍:http://afnetworking.github.com/AFNetworking/ 在开源中国iOS客户端中关于AFNetworking类库的使用只用到了两个实例方法 (1)getPath:parameters:success:failure: (2)postPath:parameters:success:failure: 他们用法基本相同只是请求数据方式不同一种是Get请求和Post请求。Get是向服务器发索取数据的一种请求也就相当于查询信息功能不会修改类容Post是向服务器提交数据的一种请求影响数据内容两种方法定义 - (void)getPath:(NSString *)path parameters:(NSDictionary *)parameters success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure { NSURLRequest *request [self requestWithMethod:GET path:path parameters:parameters]; AFHTTPRequestOperation *operation [self HTTPRequestOperationWithRequest:request success:success failure:failure]; [self enqueueHTTPRequestOperation:operation]; }- (void)postPath:(NSString *)path parameters:(NSDictionary *)parameters success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure { NSURLRequest *request [self requestWithMethod:POST path:path parameters:parameters]; AFHTTPRequestOperation *operation [self HTTPRequestOperationWithRequest:request success:success failure:failure]; [self enqueueHTTPRequestOperation:operation]; } getPath:parameters:success:failure:方法在程序中使用举例: NewsView.m - (void)reload:(BOOL)noRefresh { //如果有网络连接 if ([Config Instance].isNetworkRunning) { if (isLoading || isLoadOver) { return; } if (!noRefresh) { allCount 0; } int pageIndex allCount/20; NSString *url; switch (self.catalog) { case 1: url [NSString stringWithFormat:%?catalog%dpageIndex%dpageSize%d, api_news_list, 1, pageIndex, 20]; break; case 2: url [NSString stringWithFormat:%?typelatestpageIndex%dpageSize%d, api_blog_list, pageIndex, 20]; break; case 3: url [NSString stringWithFormat:%?typerecommendpageIndex%dpageSize%d, api_blog_list, pageIndex, 20]; break; } [[AFOSCClient sharedClient]getPath:url parameters:Nil success:^(AFHTTPRequestOperation *operation, id responseObject) { [Tool getOSCNotice2:operation.responseString]; isLoading NO; if (!noRefresh) { [self clear]; } try { NSMutableArray *newNews self.catalog 1 ? [Tool readStrNewsArray:operation.responseString andOld: news]: [Tool readStrUserBlogsArray:operation.responseString andOld: news]; int count [Tool isListOver2:operation.responseString]; allCount count; if (count 20) { isLoadOver YES; } [news addObjectsFromArray:newNews]; [self.tableNews reloadData]; [self doneLoadingTableViewData]; //如果是第一页 则缓存下来 if (news.count 20) { [Tool saveCache:5 andID:self.catalog andString:operation.responseString]; } } catch (NSException *exception) { [NdUncaughtExceptionHandler TakeException:exception]; } finally { [self doneLoadingTableViewData]; } } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(新闻列表获取出错); //如果是刷新 [self doneLoadingTableViewData]; if ([Config Instance].isNetworkRunning NO) { return; } isLoading NO; if ([Config Instance].isNetworkRunning) { [Tool ToastNotification:错误 网络无连接 andView:self.view andLoading:NO andIsBottom:NO]; } }]; isLoading YES; [self.tableNews reloadData]; } //如果没有网络连接 else { NSString *value [Tool getCache:5 andID:self.catalog]; if (value) { NSMutableArray *newNews [Tool readStrNewsArray:value andOld:news]; [self.tableNews reloadData]; isLoadOver YES; [news addObjectsFromArray:newNews]; [self.tableNews reloadData]; [self doneLoadingTableViewData]; } } } 分析一下这里面的代码 首先是做一个网络连接判断在开源中国iOS客户端学习——(六)网络连接检测一文中介绍了作者并不是用这种方法来判断而是使用getPath:parameters:success:failure:来判断网络的连接方法使用AFHTTPRequestOperation和“PATCH”请求HTTP客户端操作队列使用到了block块(iOS 4.0特性)URL请求成功执行success块里操作这里面block块没有返回值接受两个参数创建请求操作和响应数据请求URL请求失败执行failure里面的方法这个block块里仍没有返回值接受两个参数创建请求操作和NSError对象描述网络或解析错误状况 在 if()中的方法[Config Instance].isNetworkRunningYES的,如果程序加载或者已经加载完毕什么也不返回如果程序没有加载数据将数据列表数量显示为0接下来是在switch()中根据使用者选择设置不同API接口(下图)然后就是解析显示数据信息显示在视图中    在AFNetwork 文件夹中作者自己添加了一个AFOSCClient类该类继承AFHTTPClient又设计了一个sharedClient的类方法从返回的结果可以推测出它是通过API请求返回json类型的数据具体什么作用还没看出来 [Tool getOSCNotice2:operation.responseString];是封装在在Tool类中的解析获取的XML的文件 URL请求成功还做了一个程序异常处理防止请求数据过成功程序异常崩溃  关于try catch finally异常处理的使用 try { //执行的代码其中可能有异常。一旦发现异常则立即跳到catch执行。否则不会执行catch里面的内容 } catch { //除非try里面执行代码发生了异常否则这里的代码不会执行 } finally { //不管什么情况都会执行包括try catch 里面用了return ,可以理解为只要执行了try或者catch就一定会执行 finally } 如果URL请求的数据出错则反应网络不连通数据不能加载则弹出GCDiscreetNotificationView提示视图  提示网络错误 postPath:parameters:success:failure:方法在程序中使用举例: FriendsView.m -(void)reload:(BOOL)noRefresh { if (isLoadOver) { [self doneLoadingTableViewData]; return; } [[AFOSCClient sharedClient] postPath:api_friends_list parameters:[NSDictionary dictionaryWithObjectsAndKeys:segement.selectedSegmentIndex 0 ? 1 : 0,relation, [NSString stringWithFormat:%d, friends.count/20],pageIndex, 20,pageSize, [NSString stringWithFormat:%d, [Config Instance].getUID],uid,nil] success:^(AFHTTPRequestOperation *operation, id responseObject) { if (!noRefresh) { [self clear]; } [self doneLoadingTableViewData]; isLoading NO; NSString *response operation.responseString; [Tool getOSCNotice2:response]; try { TBXML *xml [[TBXML alloc] initWithXMLString:response error:nil]; TBXMLElement *root xml.rootXMLElement; //显示 TBXMLElement *_friends [TBXML childElementNamed:friends parentElement:root]; if (!_friends) { isLoadOver YES; [self.tableFriends reloadData]; return; } TBXMLElement *first [TBXML childElementNamed:friend parentElement:_friends]; if (first nil) { [self.tableFriends reloadData]; isLoadOver YES; return; } NSMutableArray *newFriends [[NSMutableArray alloc] initWithCapacity:20]; TBXMLElement *name [TBXML childElementNamed:name parentElement:first]; TBXMLElement *userid [TBXML childElementNamed:userid parentElement:first]; TBXMLElement *portrait [TBXML childElementNamed:portrait parentElement:first]; TBXMLElement *expertise [TBXML childElementNamed:expertise parentElement:first]; TBXMLElement *gender [TBXML childElementNamed:gender parentElement:first]; Friend *f [[Friend alloc] initWithParameters:[TBXML textForElement:name] andUID:[[TBXML textForElement:userid] intValue] andPortrait:[TBXML textForElement:portrait] andExpertise:[TBXML textForElement:expertise] andMale:[[TBXML textForElement:gender] intValue] 1]; if (![Tool isRepeatFriend: friends andFriend:f]) { [newFriends addObject:f]; } while (first) { first [TBXML nextSiblingNamed:friend searchFromElement:first]; if (first) { name [TBXML childElementNamed:name parentElement:first]; userid [TBXML childElementNamed:userid parentElement:first]; portrait [TBXML childElementNamed:portrait parentElement:first]; expertise [TBXML childElementNamed:expertise parentElement:first]; gender [TBXML childElementNamed:gender parentElement:first]; f [[Friend alloc] initWithParameters:[TBXML textForElement:name] andUID:[[TBXML textForElement:userid] intValue] andPortrait:[TBXML textForElement:portrait] andExpertise:[TBXML textForElement:expertise] andMale:[[TBXML textForElement:gender] intValue] 1]; if (![Tool isRepeatFriend:friends andFriend:f]) { [newFriends addObject:f]; } } else break; } if (newFriends.count 20) { isLoadOver YES; } [friends addObjectsFromArray:newFriends]; [self.tableFriends reloadData]; } catch (NSException *exception) { [NdUncaughtExceptionHandler TakeException:exception]; } finally { [self doneLoadingTableViewData]; } } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(好友列表获取出错); [self doneLoadingTableViewData]; isLoading NO; if ([Config Instance].isNetworkRunning) { [Tool ToastNotification:错误 网络无连接 andView:self.view andLoading:NO andIsBottom:NO]; } }]; isLoading YES; [self.tableFriends reloadData]; } 这个方法和getPath:parameters:success:failure:不同的在于请求方式是POST请求可以向服务器里提交数据 转载于:https://blog.51cto.com/duxinfeng/1208682
http://wiki.neutronadmin.com/news/389281/

相关文章:

  • 黑龙江企业网站建设公司优秀平面广告设计
  • 品牌网站设计制作公司推荐网站服务器有哪些类型有哪些类型有哪些类型有哪些类型有哪些
  • 网店装修流程百度seo排名优化是什么
  • 银川商城网站建设加工平台纳米所
  • 长春网站建设方案服务网站开发运营推广叫什么软件
  • 做餐饮网站建设潍坊市作风建设年活动网站
  • 哪个网站看电视剧最全还免费益阳营销网站建设
  • 无锡机关单位建设网站平台设计图
  • 企业网站管理系统怎么用做设计不进设计公司网站
  • 汽车零部件公司网站建设方案wordpress 任务管理系统
  • 滨海做网站需要多少钱广东响应式网站
  • 怎么更改网站名称代理记账公司如何寻找客户
  • 网站优化总结报告网站开发案列
  • 企业网站的建设有哪些经典问题房地产企业网站模板免费下载
  • 国内专业网站制作js 网站开发
  • 网站找到后台了 如何破解账号 密码营销成功的案例
  • 网站内部资源推广案例wordpress文字替换
  • 公明网站建设公司临沂百度seo
  • 个人怎么做电影相关的网站电脑中安装wordpress
  • 舟山 做企业网站做网站建设找哪家好
  • 网站开发网站说明怎么写html5 动态效果 手机网站
  • 中国空间站最新视频自己做网站网站资源哪里来
  • 自己做的网站与ie不兼容美团网站界面设计
  • 无锡网站建设 君通科技坪山网站建设服务
  • 重庆建网站诚选快忻科技悉心如需锦州网站建设
  • 官方网站欣赏微官网 入口
  • 北京网站建设过程网站怎么做数据接口
  • 图库素材网站模板为什么公司网站打不开
  • 建设京东商城网站中国能源建设集团有限公司级别
  • wordpress常常被用来做什么网站庆阳做网站