DPNetworking 0.0.3

DPNetworking 0.0.3

wang 维护。



  • dpwong

DPNetworking

CI Status Version License Platform

示例

要运行示例项目,请克隆仓库,然后首先从 Example 目录运行 pod install

需求

安装

DPNetworking 通过 CocoaPods 提供。要安装它,只需将以下行添加到 Podfile 中即可

pod "DPNetworking"

使用

快速使用

#import "DPNetworking.h"


  // 单例  只需要配置一次
    /************** 以下只是举例,请根据自身需要配置 **************/
    // 通用网络请求设置
    DPNetConfig *config = [DPNetConfig sharedManager];

    // 设置baseRUL
    config.baseURL = @"http://api.xxxx.com/app/";
    
    // 设置通用的头部信息
    config.HTTPHeaderDic = @{@"token" : @"xxxxxxxx", @"versions" : @"1.0.0"};
    
    // 设置返回格式
    config.acceptableContentTypes = [NSSet setWithObjects:@"text/plain",@"application/json", @"text/jaon" ,@"text/javascript",@"text/html", nil];
    
    // 设置通用的请求失败处理
    config.failureBlock = ^BOOL(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        NSError *e = (NSError*)error;
        NSData *errorData = e.userInfo[AFNetworkingOperationFailingURLResponseDataErrorKey];
        if (errorData) {
            NSDictionary *serializedData = [NSJSONSerialization JSONObjectWithData: errorData options:kNilOptions error:nil];
            // 如判断token是否失效
            if ([serializedData[@"code"] integerValue] == 1010) {
                NSLog(@"token 失效");
                return NO;
            }
            NSLog(@"\n error:%@ \n ******************** \n URL:%@",serializedData, error.userInfo[@"NSErrorFailingURLKey"]);
        }
        return YES;
    };
    
    /******************************************************/

    
    [DPNetworking get:@"xxxx"
               handle:^(DPNetworking * _Nonnull handle) {
                   // 如果对本次请求需要什么特殊设置,可以在此处设置
                   handle.requestSerializer.timeoutInterval = 15.f;
                   [handle.requestSerializer setValue:@"1" forHTTPHeaderField:@"status"];
               }
           parameters:@{@"key" : @"value"}
              success:^(id responseObject) {
                  
              }
              failure:^(id error) {
                  
              }];

作者

dpwong, [email protected]

许可

DPNetworking 可在 MIT 许可下使用。有关更多信息,请参阅 LICENSE 文件。