<script src=“http://cnstatic01.e.vhall.com/3rdlibs/jquery/1.11.2/jquery.min.js” type=“text/javascript”></script>
在需要调用SDK的页面插入以下代码以引入JS文件:
<script type="text/javascript" src="http://cnstatic01.e.vhall.com/demand-uploadjssdk/dist/1.0.0/vhallDemandSDK.js"></script>
/** * 1、初始化dom */ <input type="file" id="upload"/>
/** * 2、根据appKey和secretKey生成sign 生成sign的具体规则如下: * (1) 按参数名升序排列 * (2) 然后按参数名1+参数值+参数名2+参数值拼接 * (3) 在首尾各加上secret_key * (4) 计算md5作为signa */ // 该代码为客户端DEMO代码 仅供参考(生产环境请参考代码下面的服务端代码) function sign(appKey, secretKey) { var param = {}; return { doSign :function(){ param.auth_type = 2; param.app_key = appKey; param.signed_at = new Date().getTime().toString().substr(0, 10); var paramArray = getArray(param); var signStr = secretKey; for(var i =0; i < paramArray.length; i ++) { signStr += paramArray[i]; } signStr += secretKey; return { str : hex_md5(signStr), /* 用MD5加密得到最终sign */ time : param.signed_at /* 获取到sign的时间戳 */ } } } function getArray(paramObj) { var paramArray = []; var length = 0; for (var i in paramObj) { paramArray[length] = i + paramObj[i]; length += 1; } paramArray.length = length; return paramArray.sort(); } }
appKey和secretKey获取方法获取请参见 http://e.vhall.com/home/vhallapi/instructions
服务签名端代码请参考 http://e.vhall.com/home/vhallapi/instructions
/** * 3、调用 vhallDemandSDK 方法 */ vhallDemandSDK('#upload',{ params: { sign:sign, /**sign**/ signed_at:time, /**获取sign的时间戳**/ app_key:appKey }, ready: function() { /** * 初始化完成的回调函数 **/ }, beforeUpload:function() { /** * 准备中...(文件进行MD5转换过程) **/ }, progress:function(percent, file){ /** * 上传中...' * 'percent 上传进度百分比' * 'file 上传文档具体信息 **/ }, uploadSuccess: function(res){ /** * 上传成功!' * 'res 成功返回的回放ID records_id 和 活动ID webinar_id **/ }, error: function(msg,file,e){ /** * 上传出错' * 'msg 错误返回的状态码信息' **/ } })
错误码 | 说明 |
---|---|
10000 | 当前浏览器不支持断点上传 |
10001 | 请传入类似于”#id”选择器 |
10003 | 当前传入的dom不是input file |
10004 | 不支持该文件格式 |
10005 | 上传文件大于10GB |
10006 | 获取上传临时授权失败 |
10007 | 当前账号无上传权限 |
'rmvb', 'mp4', 'avi', 'wmv', 'mkv', 'flv', 'mp3', 'wav', 'mov'
需要将获取到的 appKey 和 secretKey 以URL传参的方式拼接到URL中即可使用
为保证本SDK能够正常使用请尽量在高版本浏览器下使用本SDK产品(Chrome58及以上版本)