iOS 提交form表單,上傳圖片

來源:互聯網
上載者:User

標籤:表單   gre   頭像更換   content   pes   smi   picker   net   name   

之前不會用,總感覺很難,用後感覺不是太難,本文只是簡單的講一下怎麼使用的,

//執行個體話對象 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];    manager.requestSerializer.timeoutInterval = 20;    manager.responseSerializer = [[AFHTTPResponseSerializer alloc] init];    manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil];        //在要求標頭裡 添加自己需要的參數    NSString *token = [[YXLoginStatusTool sharedLoginStatus] getTokenId];    [manager.requestSerializer setValue:token forHTTPHeaderField:@"id"];//請求地址        NSString *URLSTR = @"";        [manager POST:URLSTR parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {

      //轉成data

      self.justimagedata = UIImagePNGRepresentation(pickerImagePic);

//按照表單格式把二進位檔案寫入formData表單        [formData appendPartWithFileData:self.justimagedata name:@"" fileName:@"" mimeType:@"image/png"];            [formData appendPartWithFileData:self.backimagedata name:@"" fileName:@"" mimeType:@"image/png"];                    } progress:^(NSProgress * _Nonnull uploadProgress) {                YXLog(@"++++%@+++",uploadProgress);            }  success:^(NSURLSessionDataTask *task, id responseObject) {              YXLog(@"responseObject == %@--++--%@----", [self getResponseObjcWithTask:responseObject],[self getRespodHeaderWithTask:task]);                if ([[self getRespodHeaderWithTask:task][@"Status"] isEqualToString:@"1"]) {                       //成功        }else{                        [YXAlearMnager ShowAlearViewWith:[self getRespodHeaderWithTask:responseObject][@"errorMsg"] Type:2];        }        [YXNetworkHUD dismiss];            } failure:^(NSURLSessionDataTask *task, NSError *error) {                [YXNetworkHUD dismiss];                 YXLog(@"發送失敗+++++%@++++%@",error,[self getRespodHeaderWithTask:task]);                [YXAlearMnager ShowAlearViewWith:@"頭像更換失敗" Type:2];    }];
//** 擷取回應標頭 */- (id)getRespodHeaderWithTask:(NSURLSessionTask *)task{    NSHTTPURLResponse *respond = (NSHTTPURLResponse *)task.response;    return respond.allHeaderFields;}-(id)getResponseObjcWithTask:(id )responseObect{    id json;    NSError *error;    json = [NSJSONSerialization JSONObjectWithData:responseObect options:0 error:&error];    if (error) {        json = [[NSString alloc] initWithData:responseObect encoding:NSUTF8StringEncoding];    }    return json;}

 

iOS 提交form表單,上傳圖片

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.