Skip to content

add key handler #5

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 20 commits into from
Apr 3, 2014
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .DS_Store
Binary file not shown.
28 changes: 21 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,9 @@ qiniu-js-sdk
runtimes: 'html5,flash,html4', //上传模式,依次退化
browse_button: 'pickfiles', //上传选择的点选按钮,**必需**
uptoken_url: '/token', //Ajax请求upToken的Url,**强烈建议设置**(服务端提供)
// uptoken : '<Your upload token>', //若你未指定uptoken_url,则必须指定 uptoken ,uptoken由其他程序生成
// uptoken : '<Your upload token>', //若未指定uptoken_url,则必须指定 uptoken ,uptoken由其他程序生成
// unique_names: true, // 默认 false,key为文件名。若开启该选项,SDK为自动生成上传成功后的key(文件名)。
// save_key: true, // 默认 false。若在服务端生成uptoken的上传策略中指定了 `sava_key`,则开启,SDK会忽略对key的处理
domain: 'http://qiniu-plupload.qiniudn.com/', //bucket 域名,下载资源时用到,**必需**
container: 'container', //上传区域DOM ID,默认是browser_button的父元素,
max_file_size: '100mb', //最大文件体积限制
Expand All @@ -73,18 +75,18 @@ qiniu-js-sdk
init: {
'FilesAdded': function(up, files) {
plupload.each(files, function(file) {
//文件添加进队列后,处理相关的事情
// 文件添加进队列后,处理相关的事情
});
},
'BeforeUpload': function(up, file) {
//每个文件上传前,处理相关的事情
// 每个文件上传前,处理相关的事情
},
'UploadProgress': function(up, file) {
//每个文件上传时,处理相关的事情
// 每个文件上传时,处理相关的事情
},
'FileUploaded': function(up, file, info) {
//每个文件上传成功后,处理相关的事情
//其中 info 是文件上传成功后,服务端返回的json,形式如
// 每个文件上传成功后,处理相关的事情
// 其中 info 是文件上传成功后,服务端返回的json,形式如
// {
// "hash": "Fh8xVqod2MQ1mocfI4S4KpRL6D98",
// "key": "gogopher.jpg"
Expand All @@ -100,6 +102,14 @@ qiniu-js-sdk
},
'UploadComplete': function() {
//队列文件处理完毕后,处理相关的事情
},
'Key': function(up, file) {
// 若想在前端对每个文件的key进行个性化处理,可以配置该函数
// 该配置必须要在 unique_names: false , save_key: false 时才生效

var key = "";
// do something with key here
return key
}
}
});
Expand Down Expand Up @@ -278,6 +288,10 @@ qiniu-js-sdk

* [安装nodejs](http://nodejs.org/download/)

* [安装npm](https://www.npmjs.org/)

* 安装七牛 Node.js SDK、express `npm install`

* 获取源代码:
`git clone [email protected]:qiniupd/qiniu-js-sdk.git`
* 进入`demo`目录,修改`config.js`,`Access Key`和`Secret Key` 按如下方式获取
Expand All @@ -303,7 +317,7 @@ qiniu-js-sdk

1. 本SDK依赖Plupload,初始化之前请引入Plupload插件

2. 本SDK依赖服务端颁发uptoken,必须构建后端服务
2. 本SDK依赖服务端颁发uptoken,可以提供Ajax请求地址 `uptoken_url` 或者直接设置 `uptoken` 实现,建议前者。

3. 如果您想了解更多七牛的上传策略,建议您仔细阅读 [七牛官方文档-上传](http://developer.qiniu.com/docs/v6/api/reference/up/)

Expand Down
35 changes: 17 additions & 18 deletions demo/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -70,18 +70,6 @@ <h1 class="text-left col-md-12 ">
</tr>
</thead>
<tbody id="fsUploadProgress">
<!-- <tr>
<td class="progressName">the Bird</td>
<td class="progressFileSize">Larry</td>
<td>
// <div class="progress">
// <div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="20" aria-valuemin="0" aria-valuemax="100" style="width: 20%">
// <span class="sr-only">20% Complete</span>
// </div>
// </div>
// <div class="status"></div>
</td>
</tr> -->
</tbody>
</table>
</div>
Expand All @@ -100,7 +88,10 @@ <h4 class="modal-title" id="myModalLabel">查看初始化代码</h4>
var uploader = Qiniu.uploader({
runtimes: 'html5,flash,html4', //上传模式,依次退化
browse_button: 'pickfiles', //上传选择的点选按钮,**必需**
uptoken_url: '/token', //Ajax请求upToken的Url,**必需**(服务端提供)
uptoken_url: '/token', //Ajax请求upToken的Url,**强烈建议设置**(服务端提供)
// uptoken : '<Your upload token>', //若未指定uptoken_url,则必须指定 uptoken ,uptoken由其他程序生成
// unique_names: true, // 默认 false,key为文件名。若开启该选项,SDK为自动生成上传成功后的key(文件名)。
// save_key: true, // 默认 false。若在服务端生成uptoken的上传策略中指定了 `sava_key`,则开启,SDK会忽略对key的处理
domain: 'http://qiniu-plupload.qiniudn.com/', //bucket 域名,下载资源时用到,**必需**
container: 'container', //上传区域DOM ID,默认是browser_button的父元素,
max_file_size: '100mb', //最大文件体积限制
Expand All @@ -113,18 +104,18 @@ <h4 class="modal-title" id="myModalLabel">查看初始化代码</h4>
init: {
'FilesAdded': function(up, files) {
plupload.each(files, function(file) {
//文件添加进队列后,处理相关的事情
// 文件添加进队列后,处理相关的事情
});
},
'BeforeUpload': function(up, file) {
//每个文件上传前,处理相关的事情
// 每个文件上传前,处理相关的事情
},
'UploadProgress': function(up, file) {
//每个文件上传时,处理相关的事情
// 每个文件上传时,处理相关的事情
},
'FileUploaded': function(up, file, info) {
//每个文件上传成功后,处理相关的事情
//其中 info 是文件上传成功后,服务端返回的json,形式如
// 每个文件上传成功后,处理相关的事情
// 其中 info 是文件上传成功后,服务端返回的json,形式如
// {
// "hash": "Fh8xVqod2MQ1mocfI4S4KpRL6D98",
// "key": "gogopher.jpg"
Expand All @@ -140,6 +131,14 @@ <h4 class="modal-title" id="myModalLabel">查看初始化代码</h4>
},
'UploadComplete': function() {
//队列文件处理完毕后,处理相关的事情
},
'Key': function(up, file) {
// 若想在前端对每个文件的key进行个性化处理,可以配置该函数
// 该配置必须要在 unique_names: false , save_key: false 时才生效

var key = "";
// do something with key here
return key
}
}
});
Expand Down
15 changes: 14 additions & 1 deletion demo/js/main.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
/*global Qiniu */
/*global plupload */
/*global FileProgress */
/*global hljs */

var uploader = Qiniu.uploader({
runtimes: 'html5,flash,html4',
browse_button: 'pickfiles',
Expand All @@ -9,6 +14,8 @@ var uploader = Qiniu.uploader({
chunk_size: '4mb',
uptoken_url: '/token',
domain: 'http://qiniu-plupload.qiniudn.com/',
// unique_names: true,
// save_key: true,
auto_start: true,
init: {
'FilesAdded': function(up, files) {
Expand Down Expand Up @@ -45,6 +52,12 @@ var uploader = Qiniu.uploader({
progress.setError();
progress.setStatus(errTip);
}
// ,
// 'Key': function(up, file) {
// var key = "";
// // do something with key
// return key
// }
}
});

Expand Down Expand Up @@ -203,4 +216,4 @@ $(function() {
return false;
});

});
});
Loading