tencentCos
来自于:厦门软云网络科技有限公司立即使用
init putObject downloadObject deleteObject deleteMultipleObject
概述
tencentCos 模块封装了腾讯云对象存储服务COS。[技术支持]
对象存储(Cloud Object Storage,简称:COS)是腾讯云提供的面向非结构化数据,支持 HTTP/HTTPS 协议访问的分布式存储服务,它能容纳海量数据并保证用户对带宽和容量扩充无感知,可以作为大数据计算与分析的数据池。腾讯云 COS 提供网页端管理界面、多种语言的 SDK 以及命令行和图形化工具,并且完全兼容 S3 的 API 接口,方便用户直接使用社区工具和插件,COS 还可以和其他云产品结合,比如利用 CDN 的全球节点提供加速服务,利用数据万象的图片处理能力提供一站式图片解决方案等。
使用前需了解腾讯云对象存储相关内容,可查看腾讯云对象存储文档。
1.ios系统版本:ios8.0及以上, 请注意编译时在编译界面的高级设置里面选择支持的系统版本。
2.Android: 编译时需勾选“使用升级环境编译”。
3.必须注册腾讯云账号,并开通COS服务。
使用此模块之前必须先配置 config 文件,配置方法如下:
- 名称:tencentCos
- 参数:appId、secretId、secretKey、region、bucket
- 配置示例:
<feature name="tencentCos">
<param name="appId" value="1251049911" />
<param name="secretId" value="AKIDt95Vh2AuYLuH94F7JerXQCuy****" />
<param name="secretKey" value="yuO5IaGFpFRU7tCIuAjufrf6Hgy****" />
<param name="region" value="ap-guangzhou" />
<param name="bucket" value="edu-wkz-1251049911" />
</feature>
字段描述:
appId:在腾讯云创建“创建存储桶”名称后面跟随的固定id串,如:edu-wkz-1251049911,其中”1251049911”就是appid值
secretId:腾讯云账号生成的secretId, 是构建腾讯云 API 请求的重要凭证 [API密钥管理]
secretKey:腾讯云账号生成的secretKey, 是构建腾讯云 API 请求的重要凭证 [API密钥管理]
region:腾讯云对象存储的区域代号,如:ap-beijing-1、ap-beijing、ap-shanghai、ap-guangzhou、ap-chengdu、ap-chongqing、ap-singapore、ap-hongkong、na-toronto、eu-frankfurt、ap-mumbai、ap-seoul、na-siliconvalley、na-ashburn、ap-bangkok、eu-moscow
bucket:腾讯云对象存储的桶名,如:edu-wkz-1251049911
模块接口
init
服务初始化
init()
示例代码
var cos = api.require('tencentCos');
cos.init();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
putObject
上传文件
putObject({params}, callback(ret, err))
params
url:
- 类型:字符串
- 描述:需上传的本地文件路径,要求本地路径(fs://、widget://)
object:
- 类型:字符串
- 描述:文件存储在腾讯云上的命名,如:test/test.jpg,腾讯云会自动test文件夹,以便存储文件
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
eventType: 'success', //字符串类型;事件类型
//取值范围:
//onComplete(成功)
//onProgress(进度)
//onError(失败)
currentSize: '', //字符串类型;已上传文件大小,仅onProgress有值
totalSize: '', //字符串类型;文件总大小,仅onProgress有值
location: '' //字符串类型;腾讯云地址,仅onComplete有值
key: '' //字符串类型;腾讯云返回的key,仅onComplete有值
}
示例代码
var cos = api.require('tencentCos');
cos.putObject({
url: 'widget://image/test.jpg',
object: 'test.jpg'
}, function(ret, err){
if( ret ){
alert( JSON.stringify( ret ) );
}else{
alert( JSON.stringify( err ) );
}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
downloadObject
下载文件
downloadObject({params}, callback(ret, err))
params
url:
- 类型:字符串
- 描述:文件下载后的路径;注意:android下载后是目录加文件名,如:/storage/emulated/0/UZMap/A6097717088936/download/test.jpg; ios下载后直接是文件名,如:/var/mobile/Containers/Data/Application/729BFF43-D52E-44B9-85F0-CE71B24C197D/Documents/uzfs/wgt/A6097717088936/download
object:
- 类型:字符串
- 描述:文件在腾讯云上的命名
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
eventType: 'success', //字符串类型;事件类型
//取值范围:
//onComplete(成功)
//onProgress(进度)
//onError(失败)
currentSize: '', //字符串类型;已下载文件大小,仅onProgress有值
totalSize: '', //字符串类型;文件总大小,仅onProgress有值
path: '' //字符串类型;文件下载的本地地址,仅onComplete有值
}
示例代码
var cos = api.require('tencentCos');
cos.downloadObject({
url: 'download',
object: 'test.jpg'
}, function(ret, err){
if( ret ){
alert( JSON.stringify( ret ) );
}else{
alert( JSON.stringify( err ) );
}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
deleteObject
删除文件
deleteObject({params}, callback(ret, err))
params
object:
- 类型:字符串
- 描述:文件在腾讯云上的命名
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
eventType: 'success', //字符串类型;事件类型
//取值范围:
//onComplete(成功)
//onError(失败)
}
示例代码
var cos = api.require('tencentCos');
cos.deleteObject({
object: 'test.jpg'
}, function(ret, err){
if( ret ){
alert( JSON.stringify( ret ) );
}else{
alert( JSON.stringify( err ) );
}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
deleteMultipleObject
多文件删除
deleteMultipleObject({params}, callback(ret, err))
params
objects:
- 类型:数组
- 描述:数组内部为文件在腾讯云上的命名
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
eventType: 'success', //字符串类型;事件类型
//取值范围:
//onComplete(成功)
//onError(失败)
}
示例代码
var cos = api.require('tencentCos');
cos.deleteMultipleObject({
objects: ['test1.jpg','test2.jpg']
}, function(ret, err){
if( ret ){
alert( JSON.stringify( ret ) );
}else{
alert( JSON.stringify( err ) );
}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本