creatBucket getBuckets doesBucketExist deleteBucket setBucketAcl setUserBucketAcl uploadFile uploadStr copyObject getObjsFromBucket getFiletrateObjects getObject getObjectPart downloadObject getObjectMetaData getObjectUrl deleteObject multipartUpload cancleMultipartUpload getUnUploadMultiparts getUploadMultiparts
bdObjectStorage 封装了百度对象存储BOS,网盘云服务是基于百度网盘海量的百度对象存储BOS(Baidu Object Storage)提供稳定、安全、高效以及高扩展存储服务,支持单文件最大5TB的文本、多媒体、二进制等任何类型的数据存储。数据多地域跨集群的存储,以实现资源统一利用,降低使用难度,提高工作效率。"存储+计算框架"让您的数据加上“动力”引擎,让数据在传输、存储、处理和发布4个环节有机融为一体。
使用此插件之前建议先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:
<feature name="bdObjectStorage">
<param name="accessKey" value="" />
<param name="secretKey" value="" />
</feature>
accessKey:(必须配置)百度开放平台Access Key 如何获取。
secretKey:(必须配置)Secret Key 如何获取。
** 接口中metaData字段中的key不能为中文**
新建一个Bucket。Bucket是BOS上的命名空间,相当于数据的容器,可以存储若干数据实体(Object)。在上传数据前,必须先创建一个Bucket。
creatBucket({params}, callback(ret, err))
point:
bucketName:
ret:
{
status: true, //布尔型;是否创建成功
}
err:
{
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.creatBucket({
point:'',
bucketName:''
},function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
获取Bucket列表。
getBuckets({params}, callback(ret, err))
point:
ret:
{
status: true, //布尔型;是否获取成功
buckets:[] //Json数组;buckets
}
err:
{
errorCode: //数字类型;错误码
msg:'' //字符串类型;错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getBuckets({
point:''
},function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
判断Bucket是否存在
doesBucketExist({params}, callback(ret, err))
point:
bucketName:
ret:
{
status: true, //布尔型;true/false,存在/不存在
}
err:
{
errorCode: //数字类型;错误码
msg:'' //字符串类型;错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.doesBucketExist({
point:'',
bucketName:''
},function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
删除已存在Bucket
deleteBucket({params}, callback(ret, err))
point:
bucketName:
ret:
{
status: true, //布尔型;true/false,删除成功/删除失败
}
err:
{
errorCode: //数字类型;错误码
msg:'' //字符串类型;错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.deleteBucket({
point:'',
bucketName:''
},function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
设置Bucket的访问权限
setBucketAcl({params}, callback(ret, err))
point:
bucketName:
permission:
ret:
{
status: true, //布尔型;true/false,设置成功/设置失败
}
err:
{
errorCode: //数字类型;错误码
msg:'' //字符串类型;错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.setBucketAcl({
point:'',
bucketName:'',
permission:’‘
},function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
设置指定用户对Bucket的访问权限
setUserBucketAcl({params}, callback(ret, err))
point:
bucketName:
类型:字符串类型
描述:Bucket名称
userId:
类型:字符串类型
描述:用户Id
permission:
ret:
{
status: true, //布尔型;true/false,设置成功/设置失败
}
err:
{
errorCode: //数字类型;错误码
msg:'' //字符串类型;错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.setUserBucketAcl({
point:'',
bucketName:''
userId:'',
permission:''
},function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
以文件形式上传Object
uploadFile({params}, callback(ret, err))
point:
bucketName:
objectKey:
filePath:
metaData:
ret:
{
status: true, //布尔型;是否判断成功
eTag:'' //字符串类型;上传成功后的eTag
}
err:
{
errorCode: //数字类型 ;错误码
objectKey:‘’,
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.uploadFile({
point:'',
bucket:'',
filePath:'',
metaData:[]
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
以字符串形式上传Object
uploadStr({params}, callback(ret, err))
point:
bucketName:
objectKey:
strData:
metaData:
ret:
{
status: true, //布尔型;是否判断成功
objectKey:‘’,
eTag:'' //字符串类型;上传成功后的eTag
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.uploadStr({
point:'',
bucketName:'',
filePath:'',
metaData:[]
}function(ret, err) {
});
Android系统
可提供的1.0.0及更高版本
CopyObject接口用于将一个已经存在的Object拷贝到另外一个Object,拷贝过程中会对源Object的Etag或修改状态进行判断,根据判断结果决定是否执行拷贝。
copyObject({params}, callback(ret, err))
point:
srcBucket:
srcKey:
destBucket:
destKey:
checkETag:
{
srcETag:'', //字符串类型;用此ETag与源Object的ETag对比
checkType:'' //字符串类型; 可选字段:’match‘/'noMatch',与源Object的ETag相等的时候拷贝/与源Object的ETag不相等的时候拷贝; 默认:’match‘
}
checkChange:
{
time:'', //字符串类型;时间字符串,GMT格式("E, dd MMM yyyy HH:mm:ss z"),例如:Wed, 06 Apr 2016 06:34:40 GMT
checkType:'' //字符串类型; 可选字段:’modified‘/'unModified',在time时间后被修改过,则进行拷贝/在time时间后没有被修改过,则进行拷贝; 默认:’modified‘
}
metaData:
ret:
{
status: true, //布尔型;是否拷贝成功
eTag:'' //字符串类型;上传成功后的eTag
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.copyObject({
point:'',
srcBucket:'',
srcKey:'',
destBucket:'',
destKey:'',
checkETag:{
srcETag:'',
checkType:'match'
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
查看Bucket中Object列表。
getObjsFromBucket({params}, callback(ret, err))
point:
bucketName:
ret:
{
status: true, //布尔型;是否拷贝成功
keys:[] //JSON数组;bucket中object的key数组
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getObjsFromBucket({
point:'',
bucketName:'',
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
扩展查询,通过设置参数来筛选Object
getFiletrateObjects({params}, callback(ret, err))
point:
bucketName:
MaxKeys:
Prefix:
Delimiter:
Marker:
ret:
{
status: true, //布尔型;是否拷贝成功
keys:[] //JSON数组;bucket中object的key数组
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getFiletrateObjects({
point:'',
bucketName:'',
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
获取Object
getObject({params}, callback(ret, err))
point:
bucketName:
类型:字符串类型
描述:Bucket名称
objectKey:
类型:字符串类型
描述:查询Object的key
ret:
{
status: true, //布尔型;获取成功
metaData:[{
key:'', //自定义元数组key
value:'' //自定义元数组value
}] , //JSON数组;Object的自定义元数据
content:'' //内容的base64字符串
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getObject({
point:'',
bucketName:'',
objectKey:‘’
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
获取Object中的一部分
getObjectPart({params}, callback(ret, err))
point:
bucketName:
objectKey:
startPosition:
endPosition:
ret:
{
status: true, //布尔型;获取成功
metaData:[] , //JSON数组;Object的自定义元数据
content:'' //内容的base64字符串
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getObjectPart({
point:'',
bucketName:'',
objectKey:‘’,
startPosition:‘’,
endPosition:‘’
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
下载Object到指定路径
downloadObject({params}, callback(ret, err))
point:
bucketName:
objectKey:
savePath:
ret:
{
status: true, //布尔型;操作成功
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.downloadObject({
point:'',
bucketName:'',
objectKey:‘’,
savePath:‘’
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
只获取ObjectMetadata
getObjectMetaData({params}, callback(ret, err))
point:
bucketName:
objectKey:
ret:
{
status: true, //布尔型;获取成功
metaData:[{
key:'', //自定义元数组key
value:'' //自定义元数组value
}] , //JSON数组;Object的自定义元数据
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getObjectMetaData({
point:'',
bucketName:'',
objectKey:‘’,
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
获取Object的URL
getObjectUrl({params}, callback(ret, err))
point:
bucketName:
objectKey:
keepTime:
ret:
{
status: true, //布尔型;获取成功
objUrl , //获取到的Object的url
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getObjectUrl({
point:'',
bucketName:'',
objectKey:‘’,
keepTime:
}
}function(ret, err) {
});
Android系统
可提供的1.0.0及更高版本
删除Object
deleteObject({params}, callback(ret, err))
point:
bucketName:
objectKey:
ret:
{
status: true, //布尔型;删除成功/失败
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.deleteObject({
point:'',
bucketName:'',
objectKey:‘’
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
分块上传
multipartUpload({params}, callback(ret, err))
point:
bucketName:
objectKey:
filePath:
partSize:
ret:
{
status: true, //布尔型;删除成功/失败
uploadId:'' , //字符串类型;分块上传的uploadId
eTag:'' //字符串类型;上传成功后的eTag
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.multipartUpload({
point:'',
bucketName:'',
objectKey:‘’,
filePath:'',
partSize:
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
取消分块上传
cancleMultipartUpload({params}, callback(ret, err))
point:
bucketName:
objectKey:
uploadId:
ret:
{
status: true, //布尔型;取消成功/失败
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.cancleMultipartUpload({
point:'',
bucketName:'',
uploadId:‘’
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
获取未完成的分块上传
getUnUploadMultiparts({params}, callback(ret, err))
point:
bucketName:
ret:
{
status: true, //布尔型;取消成功/失败
multiparts:[{ //JSON数组;未完成块儿
multipartKey: //字符串类型;未完成 key
uploadId: //字符串类型; 未完成 uploadId
}]
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getUnUploadMultiparts({
point:'',
bucketName:'',
}
}function(ret, err) {
});
Android系统,IOS系统
可提供的1.0.0及更高版本
获取所有已上传的分块信息
getUnUploadMultiparts({params}, callback(ret, err))
point:
bucketName:
objectKey:
uploadId:
maxPart:
partNumber:
ret:
{
status: true, //布尔型;取消成功/失败
multiparts:[{ //JSON数组;完成块儿
partNumber:1, //数字类型;已完成块 位置
partETag: //字符串类型; 完成partETag
}]
}
err:
{
errorCode: //数字类型 ;错误码
msg:'' //错误信息
}
var bdObjectStorage= api.require('bdObjectStorage');
bdObjectStorage.getUploadMultiparts({
point:'',
bucketName:'',
uploadId:''
}
}function(ret, err) {
});
Android系统
可提供的1.0.0及更高版本