aliyunStsOss封装了阿里云OSS云储存平台的SDK,集成了上传、下载、文件处理功能;使用之前须开通阿里云OSS服务,获取 accessKeyId 和 accessKeySecret。本文档假设您已经开通了阿里云OSS 服务,并创建了AccessKeyId 和AccessKeySecret。 本文档只支持使用STS临时授权访问模式。
获取sts鉴权临时secret(可用自身的请求替代)
getStsToken({params}, callback(ret, err))
url:
type:
data:
ret:
{
data: { //此属性为服务器封装,按原数据返回
accessKeyId: 'accessKeyId', //临时keyId
accessKeySecret: 'accessKeySecret', //临时keySecret
expiration: 'expiration', //有效期
securityToken: 'securityToken' //密钥token
},
message: '操作成功', //信息描述
code: 200 //此字段固定,不可改变,int类型
}
err:
{
message: '' //错误描述
code: 10000 //错误码
//10000:系统异常
//10001:url参数异常
//10002:type参数异常
//10003:网络异常
//404:无效URL
}
var oss = api.require('aliyunStsOss');
oss.getStsToken({
url: '/sts/getToken.mt'
}, function(ret, err) {
if(ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
初始化oss对象。 移动终端是一个不受信任的环境,如果把AccessKeyId和AccessKeySecret直接保存在终端本地用来加签请求,存在极高的风险。所以推荐使用STS临时授权访问。
initConfig({params}, callback(ret, err))
endpoint:
accessKeyId:
accessKeySecret:
securityToken:
ret:
{
message: '初始化成功', //信息描述
code: 200 //状态码
}
err:
{
message: '' //错误描述
code: 10000 //错误码
//10000:初始化失败
//10001:accessKeyId参数异常
//10002:accessKeySecret参数异常
//10003:securityToken参数异常
}
var oss = api.require('aliyunStsOss');
oss.initConfig({
accessKeyId: 'accessKeyId',
securityToken: 'securityToken',
accessKeySecret: 'accessKeySecret'
}, function(ret, err) {
if(ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
初始化oss对象。(本文档推荐使用) 移动终端是一个不受信任的环境,如果把AccessKeyId和AccessKeySecret直接保存在终端本地用来加签请求,存在极高的风险。所以推荐使用STS临时授权访问。 ** 请求地址返回的数据格式必须如下: **
{
data: {
accessKeyId: 'accessKeyId', //临时keyId
accessKeySecret: 'accessKeySecret', //临时keySecret
securityToken: 'securityToken' //密钥token
},
code: 200 //状态码为200,不可改变,int类型
}
init({params}, callback(ret, err))
url:
type:
data:
endpoint:
ret:
{
message: '初始化成功', //信息描述
code: 200 //状态码
}
err:
{
message: '' //错误描述
code: 10000 //错误码
//10000:系统异常
//10001:url参数异常
//10002:type参数异常
//10003:网络异常
//10004:网络数据有误
//10005:初始化失败
//404:无效URL
}
var oss = api.require('aliyunStsOss');
oss.init({
url: '/sts/getToken.mt'
}, function(ret, err) {
if(ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
文件上传,通过NSURL上传一个文件
upload({params}, callback(ret, err))
bucketName:
objectKey:
file:
type:
ret:
{
message: '上传成功', //状态码描述
requestId: 'requestId', //x-oss-request-id是由Aliyun OSS创建,并唯一标识这个response的UUID。
url: 'http://xxx.jpg', //文件链接,公共读可以直接访问
code: 200 //状态码
}
err:
{
message: '' //错误描述
code: 10000 //错误码
//10000:系统异常
//10001:bucketName参数异常
//10002:objectKey参数异常
//10003:file参数异常
//10004:type参数异常
}
var oss = api.require('aliyunStsOss');
oss.upload({
bucketName: 'bucketName',
objectKey: 'headImage/XXXXX.jpg',
file: '/storage/emulated/0/UZMap/A6059600789637/picture/p-307332b9.jpg'
}, function(ret, err) {
if(ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
文件断点续传,通过NSURL上传一个文件
resumableUpload({params}, callback(ret, err))
bucketName:
objectKey:
file:
ret:
{
message: '上传成功', //状态码描述
requestId: 'requestId', //x-oss-request-id是由Aliyun OSS创建,并唯一标识这个response的UUID。
url: 'http://xxx.jpg', //文件链接,公共读可以直接访问
code: 200 //状态码
}
err:
{
message: '' //错误描述
code: 10000 //错误码
//10000:系统异常
//10001:bucketName参数异常
//10002:objectKey参数异常
//10003:file参数异常
}
var oss = api.require('aliyunStsOss');
oss.resumableUpload({
bucketName: 'bucketName',
objectKey: 'headImage/XXXXX.jpg',
file: '/storage/emulated/0/UZMap/A6059600789637/picture/p-307332b9.jpg'
}, function(ret, err) {
if(ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
下载文件 使用方法前,需初始化oss对象
download({params}, callback(ret, err))
bucketName:
objectKey:
path:
type:
ret:
{
message: '下载成功', //状态码描述
requestId: 'requestId', //x-oss-request-id是由Aliyun OSS创建,并唯一标识这个response的UUID。
path: '/storage/xxx.jpg', //文件本地路径
code: 200 //状态码
}
err:
{
message: '' //错误描述
code: 10000 //错误码
//10000:系统异常
//10001:bucketName参数异常
//10002:objectKey参数异常
//10003:file参数异常
//10004:type参数异常
}
var oss = api.require('aliyunStsOss');
oss.download({
bucketName: 'bucketName',
objectKey: 'headImage/XXXXX.jpg',
path: api.cacheDir + '/XXXXX.jpg'
}, function(ret, err) {
if(ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除文件 使用方法前,需初始化oss对象
deleteObject({params}, callback(ret, err))
bucketName:
objectKey:
ret:
{
message: '删除成功', //状态码描述
requestId: 'requestId', //x-oss-request-id是由Aliyun OSS创建,并唯一标识这个response的UUID。
code: 200 //状态码
}
err:
{
message: '' //错误描述
code: 10000 //错误码
//10000:系统异常
//10001:bucketName参数异常
//10002:objectKey参数异常
}
var oss = api.require('aliyunStsOss');
oss.deleteObject({
bucketName: 'bucketName',
objectKey: 'headImage/XXXXX.jpg'
}, function(ret, err) {
if(ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
签名URL授予第三方访问(私有读的情况下使用,亦可获取文件的正确访问地址使用) 使用方法前,需初始化oss对象
signAccessObjectURL({params}, callback(ret, err))
bucketName:
objectKey:
type:
interval:
ret:
{
message: '删除成功', //状态码描述
url: 'http://xxx.jpg?OSSAccessKeyId=', //有效请求地址
code: 200 //状态码
}
err:
{
message: '' //错误描述
code: 10000 //错误码
//10000:系统异常
//10001:bucketName参数异常
//10002:objectKey参数异常
//10003:type参数异常
}
var oss = api.require('aliyunStsOss');
oss.signAccessObjectURL({
bucketName: 'bucketName',
objectKey: 'headImage/XXXXX.jpg',
type: 1
}, function(ret, err) {
if(ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本