注册 登录
主题 : iOS  上传视频
级别: 新手上路
状态: 连续签到 - [4天]
UID: 516031
精华: 0
发帖: 4
可可豆: 38 CB
威望: 22 点
在线时间: 44(时)
注册时间: 2015-10-21
最后登录: 2018-06-08
0 楼:  发表于: 2018-06-08 15:47    发自: Web Page
来源于 已解决 分类

iOS  上传视频   

本来打算写博客的,博客没写了,原来写的博客,没了,太尴尬了!!!!!!
好久没有上来看看了,突然遇到一个问题就上来记录一下 ,是关于视频上传的,上传APP内部,或者本地的视频给服务器。

先来补充一下上传大文件的知识吧:二进制流 , 文件流
        首先是二进制流 ,不管你上传什么东西, 视频也好,图片也罢,最终都会转为 NSData  (而不是NSDate 这个需要注意下),去上传说白了,都会以二进制流的方式传输数据,这是最基层的传输方式,不管以什么样的第三方的方法发起的请求,都是一样的,AFNetworking 也是一样的,同样是以二进制流的方式传输的。
        而文件流的就是以文件的形式传送的,说白了就是JSON格式,用iOS 的说法就是键值对的方式(字典)把所需要的传送的数据给上传到服务器。文件流就是把一个整体分割成若干 份然后一个一个传向服务器,服务器后台会做处理的,不需要去管。
        还有一个就是二进制流,虽然是最基层的,也可以传输数据,只不过是省略的许多步骤而已。二进制流则不是以键值对的方式传输的,直接把文件抛给服务器就可以了。
        这是我自己的见解,有错误的地方,可以在下面【评论里留言】
???? 代码

//获取文件的后缀名
    NSString *extension = [model.name componentsSeparatedByString:@"."].lastObject;
    NSLog(@"%@",model.path);
    
    //设置mimeType
    NSString *mimeType;
    mimeType = [NSString stringWithFormat:@"video/%@", extension];
    //创建AFHTTPSessionManager
    AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
    //设置响应文件类型为JSON类型
    manager.responseSerializer = [AFJSONResponseSerializer serializer];
    manager.requestSerializer     = [AFHTTPRequestSerializer serializer];
    manager.responseSerializer.acceptableContentTypes = nil;
    //设置timeout
    [manager.requestSerializer setTimeoutInterval:20.0];
    //设置请求头类型
    [manager.requestSerializer setValue:@"form/data" forHTTPHeaderField:@"Content-Type"];


++++++++++++++++++++++++++++++++++主要部分+++++++++++++++++++++++++++++++++++++++++

    [manager POST:@"上传地址" parameters:NULL constructingBodyWithBlock:^(id<AFMultipartFormData>  _Nonnull formData) {

//        NSError *error;
//        BOOL success = [formData appendPartWithFileURL:[NSURL fileURLWithPath:model.path] name:model.name fileName:model.name mimeType:mimeType error:&error];

        [formData appendPartWithFileData:【NSData 上传数据键值对对应的Value值】 name:【上传数据对应的Key值与后台对应】 fileName:【文件名】 mimeType:【文件类型】];


++++++++++++++++++++++++++++++++++结束+++++++++++++++++++++++++++++++++++++++++
        NSLog(@"%@",formData);

        /*if (!success) {
            NSLog(@"appendPartWithFileURL error: %@", error);
        }*/

    } progress:^(NSProgress * _Nonnull uploadProgress) {

        NSLog(@"上传进度: %f", uploadProgress.fractionCompleted);
    } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {

        NSLog(@"成功返回: %@", responseObject);
        model.isUploaded = YES;
        [self.uploadedArray addObject:model];
    }
    failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
            NSLog(@"上传失败: %@", error);
            model.isUploaded = NO;
   }];

请把代码粘贴在这里


关键词: 视频上传
级别: 精灵王

状态: 连续签到 - [23天]
UID: 431391
精华: 0
发帖: 1615
可可豆: 2143 CB
威望: 2088 点
在线时间: 2908(时)
注册时间: 2015-01-20
最后登录: 2018-08-20
1 楼:  发表于: 2018-06-08 15:59    发自: Web Page

请把代码粘贴在这里



  
级别: 新手上路
状态: 连续签到 - [4天]
UID: 516031
精华: 0
发帖: 4
可可豆: 38 CB
威望: 22 点
在线时间: 44(时)
注册时间: 2015-10-21
最后登录: 2018-06-08
2 楼:  发表于: 2018-06-08 16:17    发自: Web Page
回 1楼(Final_Sence) 的帖子
对这个网站有阴影了
级别: 精灵王

状态: 连续签到 - [23天]
UID: 431391
精华: 0
发帖: 1615
可可豆: 2143 CB
威望: 2088 点
在线时间: 2908(时)
注册时间: 2015-01-20
最后登录: 2018-08-20
3 楼:  发表于: 2018-06-08 16:22    发自: Web Page
回 2楼(哭泣的訫) 的帖子
    阴影因何而起
级别: 新手上路
状态: 连续签到 - [4天]
UID: 516031
精华: 0
发帖: 4
可可豆: 38 CB
威望: 22 点
在线时间: 44(时)
注册时间: 2015-10-21
最后登录: 2018-06-08
4 楼:  发表于: 2018-06-08 16:30    发自: Web Page
回 3楼(Final_Sence) 的帖子
删掉的博客找不回来了,我删的是我添加错,但更新之后 是我以前的博客,之前添加的博客不带 保护的吗
级别: 精灵王

状态: 连续签到 - [23天]
UID: 431391
精华: 0
发帖: 1615
可可豆: 2143 CB
威望: 2088 点
在线时间: 2908(时)
注册时间: 2015-01-20
最后登录: 2018-08-20
5 楼:  发表于: 2018-06-08 16:33    发自: Web Page
回 4楼(哭泣的訫) 的帖子
   提交前先备份

我也经常写了半天的东西   突然一碰鼠标(Mac 的那款可以使用手势的鼠标)       网页倒退上一个页面    内容没了  
级别: 新手上路
状态: 连续签到 - [4天]
UID: 516031
精华: 0
发帖: 4
可可豆: 38 CB
威望: 22 点
在线时间: 44(时)
注册时间: 2015-10-21
最后登录: 2018-06-08
6 楼:  发表于: 2018-06-08 17:16    发自: Web Page
回 5楼(Final_Sence) 的帖子
微博 怎么粘贴代码啊?
级别: 精灵王

状态: 连续签到 - [23天]
UID: 431391
精华: 0
发帖: 1615
可可豆: 2143 CB
威望: 2088 点
在线时间: 2908(时)
注册时间: 2015-01-20
最后登录: 2018-08-20
7 楼:  发表于: 2018-06-08 21:06    发自: Web Page
回 6楼(哭泣的訫) 的帖子
不玩微薄
级别: 禁止发言
状态: 连续签到 - [1天]
UID: 655598
精华: 0
发帖: 33
可可豆: 62 CB
威望: 58 点
在线时间: 4(时)
注册时间: 2018-06-09
最后登录: 2018-06-11
8 楼:  发表于: 2018-06-09 07:48    发自: Web Page
用户被禁言,该主题自动屏蔽!
级别: 侠客
UID: 518259
精华: 0
发帖: 224
可可豆: 263 CB
威望: 263 点
在线时间: 590(时)
注册时间: 2015-10-28
最后登录: 2018-08-20
9 楼:  发表于: 2018-06-14 08:51    发自: Web Page
用户被禁言,该主题自动屏蔽!
描述
快速回复

关注本帖(如果有新回复会站内信通知您)

发帖、回帖都会得到可观的积分奖励。查看论坛积分规则

按"Ctrl+Enter"直接提交
    顶部