YGNetwork 1.0.0.1

YGNetwork 1.0.0.1

Rays 维护。



YGNetwork 1.0.0.1

  • Bh

YGNetwork

CI Status Version License Platform

示例

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

要求

安装

YGNetwork 可通过 CocoaPods 获得。要安装它,只需将以下行添加到您的 Podfile

pod 'YGNetwork'

YGNetworkHttpRequest

普通请求,配置基础参数

// 全局配置基础参数
YGNetworkHttpRequest.shared.baseParameters = @{@"type": @"video"};
YGNetworkHttpRequest.shared.baseHeaders = @{@"sss": @"24525"};
YGNetworkHttpRequest.shared.headerLog = YES;
YGNetworkHttpRequest.shared.requestLog = YES;
YGNetworkHttpRequest.shared.responseLog = YES;
  
id params = @{
      @"page": @"1",
    @"count": @"2"
};
    
[YGNetworkHttpRequest.shared yg_method:YGGET url:@"https://api.xxx/xx" parameters:params header:@{@"hh":@"哈哈哈"} success:^(id  _Nullable responseObject) {
        
} failure:^(NSError * _Nonnull error) {
        
}];

YGNetworkManager

特殊业务处理时,可以继承使用

#import "YGHttpPublicManager.h"

static NSString * const kBaseUrl = @"https://api.xxx.xxx/";

@implementation YGHttpPublicManager

static YGHttpPublicManager *publicHttpManager = nil;

#pragma mark - Init
+ (instancetype)shared {
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        NSURL *baseUrl = [NSURL URLWithString:kBaseUrl];
        publicHttpManager = [[[self class] alloc] initWithBaseURL:baseUrl];
    });
    return publicHttpManager;
}

- (instancetype)initWithBaseURL:(NSURL *)url {
    if (self = [super initWithBaseURL:url]) {
        // 这里可以配置特殊的SessionManager
        // TODO:
        self.ygDelegate = self;
        self.baseParameters = @{@"type": @"video"};
        self.headerLog = YES;
        self.requestLog = YES;
        self.responseLog = YES;
    }
    return self;
}

#pragma mark - YGNetworkManagerDelegate
- (BOOL)yg_networkManagerSuccessWithModel:(YGNetworkModel *)networkModel {
    // TODO: 
    // 这里可以根据不同url,不同resonseObj做特殊处理,例如存储token等信息
    return YES; // YES表示会继续触发外部成功调用时的block回调
}

- (BOOL)yg_networkManagerFailureWithModel:(YGNetworkModel *)networkModel {
    // TODO:
    // 这里可以根据不同url,不同resonseObj做特殊处理,例如错误码等
    return YES; // YES表示会继续触发外部失败调用时的block回调
}

- (NSDictionary *)yg_networkManagerRequestBeforHeaderUrl:(NSString *)url {
    // TODO:
    return nil;
}

- (NSDictionary *)yg_networkManagerRequestBeforParameterUrl:(NSString *)url {
    if ([url hasPrefix:@"https://api.apiopen.top"]) {
        return @{@"count": @"2"};
    }
    return nil;
}

@end

Author

YG, [email protected]

License

YGNetwork遵循MIT许可证。更多信息请参阅LICENSE文件。