上传接口说明

参数说明

uploaddkey:后台系统设置-上传设置-上传密钥

md5值是取文件前10M作为文件md5值

可以参考软件文件夹/work/public/upload/js/upload.js

上传接口说明

ppvod 的上传是基于标准 web页面上传,是分片式的上传,以保证最大化的传输效率及断点续传,用户需要对上传的文件进行固定尺寸的分片,每次上传一个分片,当所有分片上传完成后,向服务器发送合并分片的请求,完成文件的整体上传。基本流程如下:

ReferenceError: Diagram is not defined
  • 检测分片是否存在(chunkCheck)时 ,如果分片已经存在可以直接跳过,传输下一个分片,依次类推
  • 文件分片不宜过小,建议按照 10 * 1024 * 1024 进行分片
  • 下面的接口说明以javascript举例,重点关注 URL的传参及服务器的数据回应即可。

文件是否存在检测

通过MD5检测上传的文件是否已经存在,如果存在,返回文件信息,URL请求参数说明:

  • status 固定值 md5Check
  • md5 md5值
  • uploadkey 上传秘钥
//请求URL
const url = 'http://播放域名/uploads?status=md5Check&uploadkey=uploaddkey&md5=文件md5值'

//文件存在的响应:
$.post(url, function(data) {
   //文件存在响应格式
   data = {
      ifExist: 1,
      duration: 30, //影片时长
      title: "",//标题
      path: "", //路径
      pic: "", //图片路径
      pics: "",
      gif: "", //动态图片路径
      qr: "", //二维码路径
      orgfile: "", //原始文件
      url: "", //m3u8的url
      mp4: "", // mp4 文件路径
      share: "" //分享地址路径
   }

   //文件不存在响应格式
   data = {
      ifExist: 0
    
   }
});

分片检测

检测指定的文件分片是否存在,URL请求参数说明:

  • chunkIndex 表示分片索引,从0开始计数。
  • name md5值
  • size 当前分片长度
//请求URL
const url = 'http://播放域名/uploads?status=chunkCheck&name=md5&size=1024000&chunkIndex=3'
//文件存在的响应:
$.post(url, function(data) {
   //文件存在响应格式
   data = {
      ifExist: 1,
   }

   //文件不存在响应格式
   data = {
      ifExist: 0
   }
});

分片上传

通过标准的form表单方式上传文件分片,注意form 表单的编码类型应该为 multipart/form-data.
form表单字段说明:

  • userId 上传秘钥
  • uniqueFileName md5值
  • chunk 3 当前上传的分片索引
//请求URL
const url = 'http://播放域名/uploads'
//响应200表示成功,其他失败

注意在上传时,请保证userId 是表单中的第一个字段,如果编程实现,构造formdata 时候,也务必保证将userId 字段放在分片内容之前,否则会出现校验失败

分片合并

所有分片传输完成后,执行此操作,服务器将对之前上传的所有分片进行校验并合并,URL请求字段说明:

  • status 固定值chunksMerge
  • md5 md5值
  • chunks 分片总数
  • name md5值
  • fileoldname 原始文件名(不带扩展名)
  • ext 原始文件扩展名(不带.) 比如 mp4
//请求URL
const url = 'http://播放域名/uploads'

//文件存在的响应:
$.post(url, function(data) {
   //合并成功响应
   data = {
    duration: 30, //影片时长
    title: "",//标题
    path: "", //路径
    pic: "", //图片路径
    pics: "",
    gif: "", //动态图片路径
    qr: "", //二维码路径
    orgfile: "", //原始文件
    url: "", //m3u8的url
    mp4: "", // mp4 文件路径
    share: "" //分享地址路径
}

   //文件不存在响应格式
   data = { error: "文件不完整!" }
});

 

以下是java环境的上传代码:

sdk下载https://github.com/ppvod/upload-sdk

代码包下载

安卓端上传代码和苹果ios上传源码已经写好,付费用户可到群文件自行下载。

由于文件太大,请到现在页面的网盘里面下载文件包。

下载地址是一位客户提供的nodejs版本的上传代码

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源