javascript 上传文件到 oss
2016-04-21 21:04
746 查看
1.实现思想
加载所需js文件,获取文件对象,初始化OSS对象,上传
核心方法var callback = function(){
var client = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'your id',
accessKeySecret: 'your secret',
bucket: 'your bucker'
});
OSS.co(function* () {
var result = yield client.multipartUpload("flag",file);
console.log(result);
}).catch(function (err) {
console.log(err);
});
} 2.具体代码
<input type="file" name="doc" id="doc"
onchange="javascript:setImagePreview();">
由于这种方法将ID和密码写在js文件之中,及不安全。以此采用sts方式。
实现步骤,ajax获取临时的AccessKeyId,AccessKeySecret,SecurityToken然后初始化OSS对象,上传
function setImagePreview() {
var docObj=document.getElementById("doc");
if(docObj.files && docObj.files[0]){
$.getJSON("http://localhost:8080/***/STSRequest?prefix=user/", function(data){
AccessKeyId = data.AccessKeyId;
AccessKeySecret = data.AccessKeySecret;
SecurityToken = data.SecurityToken;
//使用回调函数
callback();
});
var callback = function(){
var client = new OSS({
{ //已杭州节点为例
region: 'oss-cn-hangzhou',
accessKeyId: AccessKeyId,
accessKeySecret: AccessKeySecret,
stsToken: SecurityToken,
bucket: '9'
});
OSS.co(function* () {
var result = yield client.multipartUpload("*.jsp",docObj.files[0]);
console.log(result);
}).catch(function (err) {
console.log(err);
});
}
}
}
}
加载所需js文件,获取文件对象,初始化OSS对象,上传
核心方法var callback = function(){
var client = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'your id',
accessKeySecret: 'your secret',
bucket: 'your bucker'
});
OSS.co(function* () {
var result = yield client.multipartUpload("flag",file);
console.log(result);
}).catch(function (err) {
console.log(err);
});
} 2.具体代码
<input type="file" name="doc" id="doc"
onchange="javascript:setImagePreview();">
function setImagePreview() { var docObj=document.getElementById("doc"); var client = new OSS({ region: 'oss-cn-hangzhou', accessKeyId: '', accessKeySecret: '', bucket: '' }); OSS.co(function* () { var result = yield client.multipartUpload("",docObj.files[0]); console.log(result); }).catch(function (err) { console.log(err); }); }3.改进
由于这种方法将ID和密码写在js文件之中,及不安全。以此采用sts方式。
实现步骤,ajax获取临时的AccessKeyId,AccessKeySecret,SecurityToken然后初始化OSS对象,上传
function setImagePreview() {
var docObj=document.getElementById("doc");
if(docObj.files && docObj.files[0]){
$.getJSON("http://localhost:8080/***/STSRequest?prefix=user/", function(data){
AccessKeyId = data.AccessKeyId;
AccessKeySecret = data.AccessKeySecret;
SecurityToken = data.SecurityToken;
//使用回调函数
callback();
});
var callback = function(){
var client = new OSS({
{ //已杭州节点为例
region: 'oss-cn-hangzhou',
accessKeyId: AccessKeyId,
accessKeySecret: AccessKeySecret,
stsToken: SecurityToken,
bucket: '9'
});
OSS.co(function* () {
var result = yield client.multipartUpload("*.jsp",docObj.files[0]);
console.log(result);
}).catch(function (err) {
console.log(err);
});
}
}
}
}
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 最后一次说说闭包
- Ajax
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- Redux系列02:一个炒鸡简单的react+redux例子
- JavaScript 各种遍历方式详解
- call/apply/bind 的理解与实例分享