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];
    }

    最终效果:

      

  • 相关阅读:
    html5 自定义属性data-*
    企业微信接口授权
    js对象---字符串
    谈谈html5新增的元素及其他功能
    模拟缓存
    jdbc数据库连接
    面向对象的理解
    最简单的Spring+SpringMVC+Mybatis的整合
    EF报错 附加类型model失败
    c# Web服务远程“调用”调试
  • 原文地址:https://www.cnblogs.com/yongdaimi/p/6105197.html
Copyright © 2011-2022 走看看