iOS对网络请求的简单封装:XTRequest

jopen 7年前

请支持原创, 如需转载, 请注明出处@TEASON

关于网络请求的框架, 目前大家都在用AFNetworking, 无可厚非这是目前最好的.
但它不支持同步请求, 哈哈可能是作者太任性了的缘故
凡事存在就有它道理,存在即合理, 很多时候处理复杂的业务有可能需要用到一些同步接口来处理, 好比在一个队列中多次请求(使用依赖或使用线性队列)等等.
但没有一个框架能够非常直白的做掉这些事情. 良好的封装性能让开发更简单快速, 省掉没有必要的体力活. 只留出最重要的部分给开发者直接了当的调用.同时也让你的代码变干净. 这也是我做封装request这件事情的初衷.

AFNetworking
ASIHTTPRequest
关于ios9网络适配, 有完美解答

我在AFNetworking和ASIHTTPRequest做了一个比较简单的封装, 方便快速处理一切和请求有关的需求 .

优点:

  • 同步/异步 . get/post . 基本能应对一切app需求.
  • 统一的参数格式.
  • api比较容易扩展

参数介绍:

  • url , 地址
  • parameters , 接口传参. 无论get/post统一传字典即可
  • hud , 是否需要显示activityView ,是的我还用了MBProgressHUD
  • METHOD_REQUEST , 同步中的模式 (get/post).

方法:

1.网络状态

+ (void)netWorkStatus ;

2.异步

+ (void)GETWithUrl:(NSString *)url                 hud:(BOOL)hud          parameters:(NSDictionary *)dict             success:(void (^)(id json))success                fail:(void (^)())fail ;    + (void)POSTWithUrl:(NSString *)url                  hud:(BOOL)hud           parameters:(NSDictionary *)dict              success:(void (^)(id json))success                 fail:(void (^)())fail ;

3.同步

+ (ResultParsered *)getJsonWithURLstr:(NSString *)urlstr                         AndWithParamer:(NSDictionary *)dict                            AndWithMode:(METHOD_REQUEST)mode ;

好了, 结束了, 代码变干净不少 !

源码点这里
如果你喜欢的话, 就在github加个❤️ .嘻嘻.