nimupload
v1.0.5
Published
this is a support for breakpoint file upload,multi-file status management npm package produced by Netease IM frondend team.
Downloads
10
Maintainers
Readme
NIMUpload
NIMUpload是一款用于浏览器端点播上传的软件开发工具包,提供简单、便捷的方法,方便用户开发上传视频或图片文件的功能。
Features
- 文件上传
- 断点续传
- 多文件状态管理
Installation
一共有normal版和npm package版本。
normal版直接引入相应js即可(依赖外部jQuery以及md5,需提前引入):
<script type="text/javascript" src="path/to/jquery.js"></script> <script type="text/javascript" src="path/to/md5.js"></script> <script type="text/javascript" src="path/to/upload.js"></script>
npm package版本,通过如下指令即可完成安装:
//安装依赖 npm i md5 superagent // 安装NIMUpload npm i nimupload
Usage
调用本SDK时应先在HTML文件中添加一个用于选择文件的input标签一个用于上传的button标签。其ID可以自行指定然后作为参数传入或使用默认的ID(fileInput以及fileUpload)
在初始化时,必须传入参数 AppKey、CheckSum、CurTime、Nonce,即可完成鉴权,之后即可上传视频、图像文件至自己的网易云服务器上。
<!-- 使用自定义id,需在初始化时将id传入 -->
<input type="file" id="cusInputId" value="" multiple>
<button id="cusButtonId">上传</button>
<!-- 若使用默认sdk中id,则可不传入id -->
<input type="file" id="fileInput" value="" multiple>
<button id="fileUpload">上传</button>
var Uploader = require('nimupload')//仅仅npm package需要引入
var uploader = Uploader({
// 将后台生成的appkey等信息填写至此处
'AppKey': '', // required
'CheckSum': '', // required
'CurTime': , // required
'Nonce': , // required
'fileInputId': 'cusInputId', // optional
'fileUploadId': 'cusButtonId' // options
// 事件监听方式一:
// onSelectFile: function(fileObj) {
// console.log('selected' + fileObj);
// },
// onProgress: function(file) {
// console.log('onProgress' + file);
// },
// onFinished: function(file) {
// console.log('onFinished' + file);
// },
// onError: function() {
// console.log('出错了');
// }
});
// 事件监听方式二:
uploader.on('select', function(fileObj) {
console.log('selected:' + fileObj.fileName);
});
uploader.on('progress', function(file) {
console.log('onProgress:' + file.progress);
});
uploader.on('finished', function(file) {
console.log('onFinished:' + file.fileName);
});
uploader.on('error', function() {
console.log('出错了');
});