zoukankan      html  css  js  c++  java
  • iOS开发

    - (AFHTTPSessionManager *)getSessionManger{
            
        AFHTTPSessionManager *sessionManager = [AFHTTPSessionManager manager];
        AFJSONResponseSerializer *serializer = [AFJSONResponseSerializer serializer];
        serializer.removesKeysWithNullValues = YES;
        serializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",@"text/javascript",@"text/json",@"text/plain",@"text/html",@"application/zip", nil];
        sessionManager.responseSerializer = serializer;
        
        return sessionManager;
    }
    
    
    - (void)uploadImageWithUrl:(NSString *)url
                    parameters:(NSDictionary *)parameter
                        images:(NSArray *)images
               timeoutInterval:(NSTimeInterval)timeInterval
                  successBlock:(JZGNetworkRequestSuccessBlock)successBlock
                  failureBlock:(JZGNetworkRequestFailureBlock)failureBlock
    {
        AFHTTPSessionManager *sessionManager = [self getSessionManger];
        NSTimeInterval timeIntervals = 0;
        if ([images count] >= 3) {
            timeIntervals = ([images count] / 3  + 1) * timeInterval;
        }else
            timeIntervals = timeInterval;
        sessionManager.requestSerializer.timeoutInterval = timeIntervals;
        NSDictionary *parameters = [JZGEncyptClass parameterSortWithDictionary:parameter];
        [sessionManager POST:url parameters:parameters
                  constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {
            for (NSInteger i = 0; i < [images count]; i++) {
                [formData appendPartWithFileData:[images objectAtIndex:i] name:@"file" fileName:@"filename.jpg" mimeType:@"image/jpeg"];
            }
        } progress:^(NSProgress * _Nonnull uploadProgress) {
            NSLog(@"%@",uploadProgress);
        } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
            NSLog(@"%@",responseObject[@"Message"]);
            NSInteger code = 0;
            NSString *msg = @"";
            if (responseObject) {
                NSString *success   = responseObject[@"success"];
                code                = success.intValue;
                msg                 = responseObject[@"msg"];
            }
            successBlock(responseObject,code,msg);
        } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
            failureBlock(error);
        }];
    }
    - (void)uploadImageZipWithUrl:(NSString *)url
                       parameters:(NSDictionary *)parameter
                    imagesZipPath:(NSURL *)imagesZipPath
                     successBlock:(JZGNetworkRequestSuccessBlock)successBlock
                     failureBlock:(JZGNetworkRequestFailureBlock)failureBlock
    {
    
        AFHTTPSessionManager *sessionManager = [self getSessionManger];
        NSDictionary *parameters = [JZGEncyptClass parameterSortWithDictionary:parameter];
        NSLog(@"%@",parameters);
        [sessionManager POST:url parameters:parameters constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {
            [formData appendPartWithFileURL:imagesZipPath name:@"file" fileName:@"file.zip" mimeType:@"application/zip" error:nil];
        } progress:^(NSProgress * _Nonnull uploadProgress) {
            NSLog(@"%@",uploadProgress);
        } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
            NSLog(@"%@",responseObject[@"msg"]);
            NSInteger code = 0;
            NSString *msg = @"";
            if (responseObject) {
                NSString *success   = responseObject[@"success"];
                code                = success.intValue;
                msg                 = responseObject[@"msg"];
            }
            successBlock(responseObject,code,msg);
        } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
            NSLog(@"%@",error);
            failureBlock(error);
        }];
    }
  • 相关阅读:
    Dynamic 365 中创建编码规则
    程序员和产品经理之间的恩怨情仇
    Scrum已经俘获中国开发者的心? ——从《2017年开发者调查报告》看真相!
    不懂营销的产品经理不是好的产品经理
    关于程序猿之间丧心病狂的鄙视链——编辑器篇
    国内五款好用的开源建站系统
    程序员听到bug后的N种反应,太形象了
    功能至上!国内外最实用的协作类软件盘点
    关于程序员之间丧心病狂的鄙视链——编程语言篇
    结对编程体会
  • 原文地址:https://www.cnblogs.com/mkai/p/6807601.html
Copyright © 2011-2022 走看看