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 ...
随机推荐
- golang基于etcd实现分布式锁(转)
下面描述使用 Etcd 实现分布式锁的业务流程,假设对某个共享资源设置的锁名为:/lock/mylock 步骤 1: 准备 客户端连接 Etcd,以 /lock/mylock 为前缀创建全局唯一的 k ...
- Java 字符串拼接四种方式的性能比较分析
一.简单介绍 编写代码过程中,使用"+"和"contact"比较普遍,但是它们都不能满足大数据量的处理,一般情况下有一下四种方法处理字符串拼接,如下: 1. 加 ...
- CSS 背景图像 背景图片定位
背景图片定位 background-position属性可以给背景图片定位. background-position属性有两个值,第一个值是水平位置,第二个值是垂直位置.这两个值可以使用百分比来表示( ...
- 使用其他分支替换master分支
在提交混乱的时候, 导致master分支和远程仓库完全一致的时候,这时候解决这种问题可以创建一个新的分支, 再合并到master分支, 像这样: git checkout seotweaks git ...
- Linux root目录下.gvfs问题处理
最近收到一些关于磁盘的告警. 查了一下相关的信息. 知道了.gvfs文件夹是GNOME桌面系统的虚拟文件系统.可能是一些其它远程桌面之前连接所产生的一个文件,确定没有人再远程后.可以手动干掉它. 通过 ...
- Uncaught TypeError: form.attr is not a function 解决办法
前端form表单提交时遇到个问题,一直报错如下 首先说结论:form是个js对象,不是jQuery对象,不能用jquery对象的方法. 代码是: $(document).ready(function( ...
- java第二章继承
继承(extends)面向对象三大特征之一 类中有许多相同的属性和方法,代码重复,如果需要修改涉及较多类修改量增多 将子类中共有的属性和方法提取到父类,让子类继承父类,减少代码量,扩展性维护性,子类可 ...
- jq动画设置图片抽奖(修改效果版)
效果:点击开始,图片转动,按钮显示"停止",点击停止,选出中奖号码,,最后一个数字停止时,按钮变为"again",点击"again"开始转动 ...
- TT-付款方式
付款方式 一般T/T是可以的,上述客户我们采用的付款方式就是定金加TT,如果是信用证方式,那么需要资信良好的开证行: 中国工商银行 汇丰银行 渣打银行 花旗银行 MUSLIM COMMERCIAL B ...
- Huawei BGP和OSPF双边界重分布(二)
网络拓扑: 本例主要配置和例一致,主要是在AR3260-AR1和AR3260-AR2的路由域的边界上,从AR3260-AR1上重分布进BGP 65001的路由的时候打tag 650011,在AR326 ...