aliCloudOss 插件封装了阿里云对象存储服务oss。
阿里云对象存储服务(Object Storage Service,简称OSS)为您提供基于网络的数据存取服务。使用OSS,您可以通过网络随时存储和调用包括文本、图片、音频和视频等在内的各种非结构化数据文件。
使用前需了解阿里云对象存储相关内容,可查看阿里云对象存储文档。
1.ios系统版本:ios8.0及以上, 请注意编译时在编译界面的高级设置里面选择支持的系统版本。
2.Android: 编译时需勾选“使用升级环境编译”。
3.必须注册有Aliyun.com用户账户,并开通OSS服务。。
使用此插件之前先配置 config 文件,配置方法如下:
<feature name="aliCloudOss">
<param name="ak" value="LTAIu7Pvvj*****" />
<param name="sk" value="JN310ANAuX5iT8zlcEZ1sbz******" />
<param name="endPoint" value="https://oss-cn-shenzhen.aliyuncs.com" />
</feature>
字段描述:
ak:阿里云账号生成的Access Key ID, 是构建阿里云 API 请求的重要凭证 [API密钥管理]
sk:阿里云账号生成的Secret Access Key, 是构建阿里云 API 请求的重要凭证 [API密钥管理]
endPoint:Endpoint 表示 OSS 对外服务的访问域名。OSS 以 HTTP RESTful API 的形式对外提供服务,当访问不同的 Region 的时候,需要不同的域名。通过内网和外网访问同一个 Region 所需要的 Endpoint 也是不同的。例如杭州 Region 的外网 Endpoint 是 oss-cn-hangzhou.aliyuncs.com,内网 Endpoint 是 oss-cn-hangzhou-internal.aliyuncs.com[区域管理],记住要加协议类型(https://),如:https://oss-cn-shenzhen.aliyuncs.com
初始化sdk (调用优先级最高,只需要调用一次) 如果有输入参数,则使用输入的参数,否则默认从config文件中读取参数。
init({params}, callback(ret, err))
var oss = api.require('aliCloudOss');
oss.init();
accessKey:
secretKey:
endpoint:
ret:
{
eventType: 'onError', //字符串类型;事件类型
//取值范围:
//onError(失败)
}
iOS系统,Android系统
可提供的1.0.0及更高版本
上传文件
putObject({params}, callback(ret, err))
bucket:
objectKey:
filePath:
ret:
{
eventType: 'onComplete', //字符串类型;事件类型
//取值范围:
//onComplete(成功)
//onProgress(进度)
//onError(失败)
currentSize: '', //字符串类型;已上传文件大小,仅onProgress有值
totalSize: '', //字符串类型;文件总大小,仅onProgress有值
etag: '', //字符串类型;ETag (entity tag) 在每个Object生成的时候被创建,用于标示一个Object的内容。仅onComplete有值
requestID: '', //字符串类型;x-oss-request-id是由Aliyun OSS创建,并唯一标识这个response的UUID。如果在使用OSS服务时遇到问题,可以凭借该字段联系OSS工作人员,快速定位问。,仅onComplete有值
}
var oss = api.require('aliCloudOss');
oss.putObject({
bucket: "module-wkz",
objectKey: "test/img2",
filePath: "widget://image/test.jpg"
}, function(ret, err){
if( ret ){
alert( JSON.stringify( ret ) );
}else{
alert( JSON.stringify( err ) );
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
下载文件
downloadObject({params}, callback(ret, err))
bucket:
objectKey:
filePath:
xOssProcess:
ret:
{
eventType: 'onComplete', //字符串类型;事件类型
//取值范围:
//onComplete(成功)
//onProgress(进度)
//onError(失败)
currentSize: '', //字符串类型;已下载文件大小,仅onProgress有值
totalSize: '', //字符串类型;文件总大小,仅onProgress有值
localPath: '' //字符串类型;文件下载的本地地址,仅onComplete有值
}
var oss = api.require('aliCloudOss');
oss.downloadObject({
bucket: "module-wkz",
objectKey: "test/img1",
filePath: "test.jpg",
xOssProcess:'image/circle,r_100'
}, function(ret, err){
if( ret ){
alert( JSON.stringify( ret ) );
}else{
alert( JSON.stringify( err ) );
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除文件
deleteObject({params}, callback(ret, err))
bucket:
objectKey:
ret:
{
eventType: 'onComplete', //字符串类型;事件类型
//取值范围:
//onComplete(成功)
//onError(失败)
}
var oss = api.require('aliCloudOss');
oss.deleteObject({
bucket: "module-wkz",
objectKey: "test/img1"
}, function(ret, err){
if( ret ){
alert( JSON.stringify( ret ) );
}else{
alert( JSON.stringify( err ) );
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
复制文件
copyObject({params}, callback(ret, err))
srcBucket:
srcObjectKey:
dstBucket:
dstObjectKey:
ret:
{
eventType: 'onComplete', //字符串类型;事件类型
//取值范围:
//onComplete(成功)
//onError(失败)
}
var oss = api.require('aliCloudOss');
oss.copyObject({
srcBucket: "module-wkz",
srcObjectKey: "test/img1",
dstBucket: "module-wkz",
dstObjectKey: "test/img2"
}, function(ret, err){
if( ret ){
alert( JSON.stringify( ret ) );
}else{
alert( JSON.stringify( err ) );
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本