zoukankan      html  css  js  c++  java
  • 新浪微博客户端(40)-使用AFN发送带图片的微博

    DJComposeViewController.m

    /** 发微博 */
    - (void)sendStatusRequest {
    
        AFHTTPSessionManager *RequestManager = [AFHTTPSessionManager manager];
        
        NSArray *photos = self.photosView.photos;
        if (photos.count) { // 当前用户选择了图片
            
            UIImage *photoImage = [photos firstObject];
            NSString *urlString = @"https://upload.api.weibo.com/2/statuses/upload.json";
            NSMutableDictionary *params = [NSMutableDictionary dictionary];
            params[@"access_token"] = [DJAccountTool account].access_token;
            params[@"status"] = self.textView.text;
            
            [RequestManager POST:urlString parameters:params constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {
                [formData appendPartWithFileData:UIImageJPEGRepresentation(photoImage, 1.0) name:@"pic" fileName:@"upload.jg" mimeType:@"image/jpeg"];
            } progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
                [MBProgressHUD showSuccess:@"发送成功"];
            } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
                [MBProgressHUD showError:@"发送失败"];
            }];
            
            
        } else { // 当前用户未选择图片
            
            NSString *urlString = @"https://api.weibo.com/2/statuses/update.json";
            
            NSMutableDictionary *params = [NSMutableDictionary dictionary];
            params[@"access_token"] = [DJAccountTool account].access_token;
            params[@"status"] = self.textView.text;
            
            [RequestManager POST:urlString parameters:params progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
                [MBProgressHUD showSuccess:@"发送成功"];
            } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
                [MBProgressHUD showError:@"发送失败"];
            }];
        
        }
        
        // 关闭当前界面
        [self dismissViewControllerAnimated:YES completion:nil];
    }

    最终效果:

      

  • 相关阅读:
    ELF 格式简介
    gdb 使用说明;ARM 汇编
    博士研究生的组会PPT汇报相关-labgirls
    浅尝辄止·认识Blazor及基础使用
    VBA·Function的基础使用
    WCF·无法自动进入并单步执行服务器。调试器未能在服务器进程中停止。
    Word·查找任意汉字的方法
    VBA·编译错误:ByRef参数类型不符
    排坑·QQ浏览器打开MD文件时显示下载不能直接打开
    MSSQL·PIVOT关键字实现列转行
  • 原文地址:https://www.cnblogs.com/yongdaimi/p/6105197.html
Copyright © 2011-2022 走看看