IOS 视频.图片上传服务器
//上传视频
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.requestSerializer.timeoutInterval = 20;
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/plain", @"application/json", @"text/html", @"text/json", nil];
//上传服务器接口
[manager.requestSerializer setValue:[USER_DEFAULTS objectForKey:@"token"] forHTTPHeaderField:@"dd"];
NSData* data=[NSData dataWithContentsOfURL:self.VideoURL];
[self showRoundProgressWithTitle:@"正在上传"];
[manager POST:[NSString stringWithFormat:@"%@a_doutu/push_doutu/",URLPATH] parameters:sendDict constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) {
[formData appendPartWithFileData:data name:@"video" fileName:@"video.mp4"mimeType:@"video/mp4"];
} progress:^(NSProgress * _Nonnull uploadProgress) {
NSLog(@"upload:%@",uploadProgress.fileTotalCount);
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
// [self hideBubble];
if ([[responseObject objectForKey:@"code"] intValue] == 203) {
[self showRightWithTitle:@"发布成功" autoCloseTime:1];
[self performSelector:@selector(afterLoad) withObject:nil afterDelay:1.5];
[self.navigationController popViewControllerAnimated:YES];
}else{
[self showErrorWithTitle:[responseObject objectForKey:@"message"] autoCloseTime:1];
[self performSelector:@selector(afterLoad) withObject:nil afterDelay:1.5];
}
// NSString *resMsg = responseObject[@"resMsg"];
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
[self hideBubble];
[self showErrorWithTitle:@"网络错误" autoCloseTime:1];
}];
//上传图片
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
manager.requestSerializer.timeoutInterval = 10.0f;
[manager POST:[NSString stringWithFormat:@"%@blog/api/upload_head",MYURL] parameters:send_dic constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) {
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyyMMddHHmmss";
NSString *str = [formatter stringFromDate:[NSDate date]];
NSString *fileName = [NSString stringWithFormat:@"%@.jpg", str];
//上传图片
[formData appendPartWithFileData:imageData //要上传的文件
name:@"pic" //这个参数是后台取文件参数的时候用的名字,如果没有的话就传空字符串 如果后台要求请求参数为数组则为@"pic[]" 用于多张图片上传
fileName:fileName//文件上传的名字,可以随便取,但是不要重名,所以一般是用拼接当前时间的方式作为文件名
mimeType:@"image/jpeg"];
} progress:^(NSProgress * _Nonnull uploadProgress) {
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
//上传成功
id jsons = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil];
NSLog(@"-=-= %@",jsons);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
//上传失败
}];
IOS 视频.图片上传服务器的更多相关文章
- ios中摄像头/相册获取图片压缩图片上传服务器方法总结
本文章介绍了关于ios中摄像头/相册获取图片,压缩图片,上传服务器方法总结,有需要了解的同学可以参考一下下. 这几天在搞iphone上面一个应用的开发,里面有需要摄像头/相册编程和图片上传的问 ...
- IOS开发-图片上传
目前IOS端开发,图片上传到服务器分为两种,一种是直接上到服务器,一种是借助第三方储存(减少服务器压力). 一.直接上传到服务器 /** * 代码演示 */ //*******UIImagePNGRe ...
- iOS+PHP图片上传
这篇博客用于实现iOS客户端通过POST请求,将图片上传到服务器上.服务器端语言采用PHP,服务器环境使用MAMP搭建.先使用浏览器测试图片是否可以上传,浏览器测试成功之后再测试iOS客户端是否可以成 ...
- php图片上传服务器
原理是把图片上传到服务器的某个目录,然后在把他的名字存入数据库,或者不需要数据库这部分也行.读取的时候直接读取名字. HTML提交表格 <form method="post" ...
- ios base64图片上传失败问题
今天做图片上传,后台用的是base64解密图片二进制文件,以前都是用表单上传来解决图片上传的,现在后台没有人改,所以研究下base64上传. 需要将图片base64加密,但是调用 [data base ...
- android拍照选择图片上传服务器自定义控件
做android项目的时候总免不了遇到图片上传功能,虽然就是调用android系统的拍照和相册选择功能,但是总面部了把一大推代码写在activity里,看上去一大推代码头都昏了.不如把这些功能都集成一 ...
- C#图片上传服务器缩放存储功能
项目需求上需要用户上传头像.本来是用第三方的插件的.但是很多都是收费的. 不过,我需要花这钱么?是不?所以网络上搜集了些资料.. 果然.这个世界 大神是很多很多的. 用了个免费插件. <scri ...
- wp7图片上传服务器
做一个wp7手机上传图片到服务器的功能,具体丝路是在手机端做一个照相或者选择图片的功能,点击上传,在服务器端做一个一般处理程序,接受上传的文件,存入文件夹,下面是主要代码: 手机端代码: /// &l ...
- 入坑微信小程序必经之路(六)图片上传服务器——WebSercice接口
wxml文件 <view class="weui-uploader"> <view class="img-v weui-uploader__bd&quo ...
随机推荐
- python运行时参数m的作用
不加m时,当前目录是py文件的所在目录 加m时,当前目录就是当前目录
- gradle 排除jar包依赖
1.直接在configuration中排除 configurations { compile.exclude module: 'commons' all*.exclude group: 'org.gr ...
- 云笔记项目-Spring事务学习-传播REQUIRES_NEW
接下来测试事务传播的REQUIRES_NEW. Service层 Service层代码在这里不展示了,主要将EMPService1Impl类中的方法事务传播属性设置为REQUIRED,EMPServi ...
- HTTP协议中request和response常用方法
一.request的常用方法:1.获取请求的方式 getMethod()2.目录的路径 getContextPath()3.获取servlet路径 getServletString()4.获得get请 ...
- HDFS中将普通用户增加到超级用户组supergroup
- springboot+dubbo提示超时
在消费方工程的application.properties里面加上dubbo.consumer.timeout=30000.
- mysql出现“Incorrect key file for table”解决办法
本文来自: https://www.cnblogs.com/zjoch/archive/2013/08/19/3267131.html 今天mysql突然出现以下错误: mysql> selec ...
- 从零开始学spring cloud(五) -------- 将服务注册到Eureka上
一.开发前准备工作: 官方文档地址:https://cloud.spring.io/spring-cloud-static/spring-cloud-netflix/2.1.0.RELEASE/mul ...
- 47 【golang】mysql操作
新做了个demo,可以简单了解下mysql的操作:https://github.com/helww/mylab/tree/master/go/mysql
- Python学习笔记1环境搭建
1.在浏览器输入https://www.python.org/psf/,点击download下载python3.7.2(https://www.python.org/) https://www.p ...