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

广州市专业网站设计wordpress用qq群发

广州市专业网站设计,wordpress用qq群发,去招聘网站做顾问,百度站长对网站会有影响吗在之前的项目里#xff0c;我们都是把网络请求写在viewController的viewDidLoad#xff0c;而实际中使用的时候并不能这么简单#xff0c;对于不同的需要#xff0c;我们需要有不同的网络请求。所以我们可以用单例模式创建一个全局的Manager类#xff0c;用实例Manager来执…在之前的项目里我们都是把网络请求写在viewController的viewDidLoad而实际中使用的时候并不能这么简单对于不同的需要我们需要有不同的网络请求。所以我们可以用单例模式创建一个全局的Manager类用实例Manager来执行网络请求方法顺便用Manager传递请求数据在model中完成数据解析。 使用上一篇JSONModel中的代码为例我们现在创建一个新的Manager类然后将网络请求的相关操作封装进去并使用block传值将网络请求的结果传给要用的地方 #import JSONModel.h #import QianTaoJSONModel.h//用了block传值 //_Nonnull 是 Objective-C 中的一个关键字用于标记变量、参数或返回类型。它表示某个对象或指针的值不能为 nil //相反Objective-C 还有一个 _Nullable 关键字用于标记某个对象或指针的值可以为 nil。 typedef void (^DataBlock)(QianTaoJSONModel * _Nonnull mainModel); typedef void (^ErrorBlock)(NSError * _Nonnull error);NS_ASSUME_NONNULL_BEGINinterface Manager : JSONModel (instancetype)sharedManager; - (void)NetWorkWithData: (DataBlock)dataBlock error: (ErrorBlock) errorBlock;endNS_ASSUME_NONNULL_END #import Manager.hstatic Manager *manager; implementation Manager (instancetype)sharedManager {if (!manager) {static dispatch_once_t onceToken;dispatch_once(onceToken, ^{manager [Manager new];});}return manager; }- (void)NetWorkWithData:(nonnull DataBlock)dataBlock error:(nonnull ErrorBlock)errorBlock {NSString *urlString [[NSString alloc] init];urlString https://news-at.zhihu.com/api/4/news/latest;urlString [urlString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];NSURL *url [NSURL URLWithString:urlString];NSLog(%, urlString);NSURLRequest *request [NSURLRequest requestWithURL:url];NSURLSession *session [NSURLSession sharedSession];//根据会话创建任务NSURLSessionDataTask *dataTask [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {if (error nil) {QianTaoJSONModel *t [[QianTaoJSONModel alloc] initWithData:data error:nil];dataBlock(t);} else {errorBlock(error);}}];[dataTask resume]; }end 以上就是Manager的封装。 这时候我们就可以直接使用封装好的网络请求了。在viewController中我们先声明一个test方法在test方法中我们创建Manager对象并打印该对象的数据。在[viewDidLoad]中我们调用该方法即可 #import ViewController.hinterface ViewController ()endimplementation ViewController- (void)viewDidLoad {[super viewDidLoad];[self test]; }- (void)test {[[Manager sharedManager] NetWorkWithData:^(QianTaoJSONModel * _Nonnull mainModel) {NSLog(%, mainModel.top_stories[0]);} error:^(NSError * _Nonnull error) {NSLog(ERROR);}]; }end 结果
http://wiki.neutronadmin.com/news/129340/

相关文章:

  • 专业做网站优化价格东莞市住建局局长
  • 免费创建网站平台有哪些自己做装修网站
  • 做调研用到的大数据网站制作网站哪家服务好
  • 烟台智能建站模板网站建设审核需要多长时间
  • 莱芜0634技术支持 宿州网站建设性价比高柳州网站建设
  • 高校网站建设的目的和意义扬州市做网站
  • 网站内容建设的原则是什么意思网站语言切换功能如何做
  • 怎样提高网站点击率设计logo 费用
  • wordpress网站go.php跳转有数据库的网站
  • 自己电脑做网站服务器系统网站建设欧美风格
  • 公司云网站建设百度服务商
  • 如何规划企业网站2021没封的网站有人分享吗
  • 何苦做游戏网站公司名字大全列表
  • 建设工程质量检测网站多用户自助建站系统源码
  • 全球访问量最大的网站自建网站系统
  • 河北住房和城乡建设局网站首页法语网站建设
  • 网站租房做公寓企业信息管理系统源码
  • 佛山市研发网站建设哪家好温州百度关键词搜索
  • 百度权重是怎么来的搜索引擎优化的内容包括
  • 国内炫酷网站设计成免费crm是什么
  • 工程设计东莞网站建设技术支持自适应wordpress模板
  • 电子商务网站建设移动电商开发网页设计专业服务公司
  • 网站创意模板网站页面由什么构成
  • wordpress大型站点做国际贸易都用什么网站
  • 关于申请建设网站申请报告药监局网站建设方案
  • 个人代运营一般怎么收费合肥网站建设 乐云seo
  • 江苏艺居建设有限公司网站郑州工装定制厂家哪家好
  • 网站开发前端与后端区别揭阳网站制作费用
  • 博物馆门户网站建设网站数据怎么做论文注释
  • 外贸网站建设及优化ppt模块廊坊首页霸屏排名优化