无标题文章

@interfaceDFS_NetworkTool :NSObject+


 (_Nonnullinstancetype)sharedNetworkTool;

/**

*发送POST请求

*

*@param URLString请求的地址

*@param parameters 请求参数

*@param finished请求完成回调

*/

- (void) POST:(nonnullNSString*) URLString parameters:(nullableNSDictionary*) parameters finished:(nonnullvoid(^)(id_NullableresponseObject,NSError*_Nullableerror ))finished;

/**

*发送GET请求

*

*@param URLString请求的地址

*@param parameters 请求参数

*@param finished请求完成回调

*/

- (void) GET:(nonnullNSString*) URLString parameters:(nullableNSDictionary*) parameters finished:(nonnullvoid(^)(id_NullableresponseObject,NSError*_Nullableerror ))finished;


.m文件

@interfaceDFS_NetworkTool()

/**

*AFHTTPSessionManager 属性

*/

@property(nonatomic,strong)AFHTTPSessionManager*manager;

@end

@implementationDFS_NetworkTool

+ (instancetype)sharedNetworkTool

{

staticDFS_NetworkTool*instance;

staticdispatch_once_tonceToken;

dispatch_once(&onceToken, ^{

instance = [[DFS_NetworkToolalloc]init];

//需要json请求

//instance.manager.requestSerializer = [AFJSONRequestSerializer serializer];

//instance.manager.responseSerializer = [AFJSONResponseSerializer serializer];

// 提示 : 有没有需要注意的地方? text/html

instance.manager.responseSerializer.acceptableContentTypes= [NSSetsetWithObjects:@"application/json",@"text/json",@"text/javascript",@"text/html",@"text/plain",nil];

});

returninstance;

}

- (instancetype) init {

if(self= [superinit]) {

//调用manager每次创建一个新的AFHTTPSessionManager对象

//默认是 AFHTTPRequestSerializer

self.manager= [AFHTTPSessionManagermanager];;

}

returnself;

}

- (void) POST:(NSString*) URLString parameters:(nullableNSDictionary*) parameters finished:(void(^)(idresponseObject,NSError*error ))finished {

//调用AFN的POST方法

[self.managerPOST:URLStringparameters:parametersprogress:nilsuccess:^(NSURLSessionDataTask*_Nonnulltask,id_NullableresponseObject) {

//回调

finished(responseObject,nil);

}failure:^(NSURLSessionDataTask*_Nullabletask,NSError*_Nonnullerror) {

finished(nil,error);

}];

}

- (void) GET:(NSString*) URLString parameters:(nullableNSDictionary*) parameters finished:(void(^)(idresponseObject,NSError*error ))finished {

//调用AFN的POST方法

[self.managerGET:URLStringparameters:parametersprogress:nilsuccess:^(NSURLSessionDataTask*_Nonnulltask,id_NullableresponseObject) {

//回调

finished(responseObject,nil);

}failure:^(NSURLSessionDataTask*_Nullabletask,NSError*_Nonnullerror) {

finished(nil,error);

}];

}

@end

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • //需要AFN //.h //AFNetworking + (void)post:(NSString *)url ...
    CHADHEA阅读 4,216评论 0 0
  • #import//网络请求的根路径 #define rootPath @"http://jufeng.veyd.c...
    高乔人阅读 4,524评论 0 1
  • 最近在忙着开发公司的一个项目,中间遇到很多坑,对于图片的上传在这里我也不做太多的介绍,网上各种大神的资料都有的,今...
    LHHLHH阅读 1,796评论 1 2
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 5,894评论 0 9
  • AFNetworking是一个非常方便的网络请求库,可以轻松实现各种网络请求,比如经常使用的GET请求、POST请...
    小新xin阅读 1,247评论 0 0

友情链接更多精彩内容