上传图片两种操作方式:一种是从相册上传,一种是拍照上传

1.UIImagePickerController在这个代理方法中做如下处理:

#pragma mark - UIImagePickerController Delegate

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

{

UIImage *image = info[UIImagePickerControllerOriginalImage];

[self uploadImage:image];

[self dismissViewControllerAnimated:YES completion:nil];

}

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker

{

[self dismissViewControllerAnimated:YES completion:nil];

}

- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated

{

// bug fixes: UIIMagePickerController使用中偷换StatusBar颜色的问题

if ([navigationController isKindOfClass:[UIImagePickerController class]] &&

((UIImagePickerController *)navigationController).sourceType ==     UIImagePickerControllerSourceTypePhotoLibrary) {

[[UIApplication sharedApplication] setStatusBarHidden:NO];

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:NO];

}

[navigationController.navigationBar setTintColor:[UIColor whiteColor]];

}

2.调接口上传图片,图片必须转为NSData 通过这个方法  NSData *data = UIImageJPEGRepresentation(image, .5f);

上传接口如下:

- (void)uploadImage:(UIImage *)image

{

[MLProgressView showProgressViewAddedTo:self.view displayMessage:@"请稍后..." withType:0];

NSData *data = UIImageJPEGRepresentation(image, .5f);

XXXXNetRequestData *req = [[XXXXNetRequestData alloc] init];

[req setData:data forKey:@"imageFile"];

[req setString:@"0" forKey:@"imageType"];

[[网络请求类  sharedClient] requestPostWithType:XXXXRequest_uploadImage

args:[req toDictionary]

success:^(id responseObject) {

[MLProgressView hideAllHUDsForView:self.view];

NSString *url = [responseObject objectForKey:@"url"];

[self.webView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"sendImgLink('%@')",url]];

} failure:^(NSError *error) {

[MLProgressView hideAllHUDsForView:self.view];

Alert(@"", @"上传失败");

}];

}

[self.webView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"sendImgLink('%@')",url]]; 这个端代码是涉及到与HTML交互,在HTML网页上来完成上传。

转载于:https://www.cnblogs.com/fantasy3588/p/5164052.html

iOS POST 上传图片相关推荐

  1. 用exfe.js和canvas解决移动端 IOS 拍照上传图片翻转问题

    前言 记得16年的时候我初入前端差不多一年,公司做了一个webapp,有上传头像功能,当时这个项目不是我在负责,测试的时候发现苹果用户拍照上传头像会翻转,当时几个前端的同学捯饬了一下午也没解决,结果问 ...

  2. ios 上传图片失败 小程序_【报Bug】百度小程序真机IOS无法上传图片

    详细问题描述 (DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题) [内容] 在百度小程序开发者 ...

  3. 【uni-app】H5以及真机(android ios解决上传图片旋转90度的问题)

    h5是通过拿到旋转的值,重新用canvas画图,所以在页面需要加入canvas 元素,其中用v-if的原因,是重复上传的话之前画的不会清空掉,所以用v-if来清空.还有canvas要设置height: ...

  4. 关于ios手机上传图片旋转问题的解决

    先占个坑,一会完善!! 转载于:https://www.cnblogs.com/zhuyu/articles/5943400.html

  5. iOS NSMutableURLRequest 上传图片

    - (void)postImage:(UIImage *)_image {//分界线的标识符NSString *TWITTERFON_FORM_BOUNDARY = @"AaB03x&quo ...

  6. ios开发 上传图片颠倒问题

    曾遇到这样的一个问题,  自己上传到服务器的图片, 在请求回来莫名奇妙的就会颠倒了 解决办法只需要, 在图片上传之前, 做一下处理就可以了 //图片处理,此方法解决了, (手机竖屏拍照,图片会横倒的问 ...

  7. layui框架实战案例(6):上传图片和视频自动调用IOS或安卓系统的摄像头功能

    显示效果: 安卓系统上传图片 安卓系统上传视频 苹果IOS IOS系统上传图片 IOS系统上传视频 layui解决代码 上传图片 <button class="layui-btn&qu ...

  8. uniapp上传图片失败原因

    在uniapp中将临时图片地址上传获取永久地址, 刚开始是使用post方法直接调接口上传图片,一直上传失败, 后发现需使用uni.uploadFile()才能上传文件,代码如下 // 不传递参数的情况 ...

  9. html5报名页面设计

    在微信或者APP中但凡需要用户参与的活动,一般都会需要用户上传一些资料,这就涉及到报名页面的设计.比如在我做的心愿漂流瓶项目中,就包含报名页面,地址:发布心愿页面.在手机端打开效果图如下图1所示. 图 ...

  10. 【转】app之YdbOnline说明文档

    概述 YdbOnline是面向网页开发者提供的网页开发工具包. 通过使用YdbOnline,网页开发者可借助YdbOnline高效地使用语音.位置等手机系统的能力,同时可以直接使用清除缓存.扫一扫等A ...

最新文章

  1. ASP.NET2.0打通文件图片处理任督二脉【月儿原创】
  2. mongoDB设置用户名密码的一个要点
  3. 腾讯提超强少样本目标检测算法,公开1000类检测训练集FSOD | CVPR 2020
  4. Java并发编程:阻塞队列
  5. Algorithm:C++语言实现之链表相关算法(单链公共结点问题、一般LCA、括号匹配、最长括号匹配、逆波兰表达式Reverse Polish Notation、直方图矩形面积、收集雨水问题)
  6. 分布式系统原理 之6 两阶段提交协议
  7. Python 全国考级二级
  8. DOCKER-COMPOSE搭建MONGODB分片集群(单机版)
  9. Datawhale 零基础入门数据挖掘-Task3 特征工程
  10. 著名游戏引擎及其开发游戏
  11. 【重识云原生】第三章云存储第一节——分布式云存储总述
  12. How to get current full screen dimention and orientation in run time
  13. 海思Hi3516EV200开发第一天
  14. 推动计算机革命的幕后黑手
  15. Springboot源码分析第一弹 - 自动装配实现
  16. 史密斯热水器 保养灯亮闪烁
  17. ES系列:查看所有索引及其状态
  18. [20190415]ora-02049错误.txt
  19. 题目34 众数和中位数
  20. java 店铺装修_基于jsp的网店装修-JavaEE实现网店装修 - java项目源码

热门文章

  1. php 实现静态链接,在PHP中链接静态方法?
  2. Unomi 成为 Apache 软件基金会顶级项目
  3. MySQL几点重要的性能指标计算和优化
  4. TOMCAT JNDI RESOUCE
  5. sublime每次打开时都提示升级,怎么取消这个弹出框?
  6. ERROR - ORA-12560: TNS:protocol adapter error
  7. 【Linux】vim简介及安装
  8. mysql_query扩展_前端学PHP之mysql扩展函数
  9. Linux 执行 Shell脚本报错,“syntax error: unexpected end of file” 原因及处理
  10. 5分钟内快速上手掌握springtx事务以及注解的使用