更新时间:2023-06-05 GMT+08:00
分享

上传文件

功能介绍

将本地文件上传到存储中。使用该API上传文件,默认只会上传到连接器下配置的第一个桶中。待上传的文件可以是文本文件、图片、视频等任何类型。

URI

POST AstroZero域名/u-route/baas/sys/v1.1/connectors/{connector_type}/{connector_name}/putobject?object=X

表1 路径参数

参数

是否必选

参数类型

描述

connector_type

String

连接器的类型。

  • obs:与OBS对接的连接器。
  • minio:与MINIO对接的连接器。
  • objectstorageproxy:对象存储代理类型。

connector_name

String

连接器实例的名称,即创建连接器时命名的连接器实例名称。

object

String

待上传文件所在桶里的全路径,包含文件名、文件类型、上传到桶里的路径。不携带路径时,表示上传到桶的根目录下。

例如:取值为“a/b/c/1.txt”,表示将文件“1.txt”上传到桶的“a/b/c”路径下。如果桶中不存在该路径,会创建该路径。

请求参数

请求中的body类型,按照“multipart/form-data”格式。

表2 请求参数

参数

是否必选

参数类型

描述

dir

String

上传文件在桶上的目录,如果为空则表示桶上的根目录。

acl

String

上传文件的访问控制权限。

  • private:私有
  • public-read:公共读
  • public-read-write:公共读写
  • default:和桶配置的权限一致

不填的话,和桶配置的权限一致。

object

String

要上传的文件数据,包含文件名和文件内容。

响应参数

表3 响应参数说明

参数

参数类型

描述

resCode

String

返回码,如果返回“0”代表请求成功,其他错误码说明请参考错误码

resMsg

String

返回消息,如果成功状态,通常会返回“Success”,其他情况会返回具体的错误信息。

result

Object

如果请求成功,返回上传文件在桶上的路径。

请求示例

已创建好如图1所示的OBS类型连接器,连接器实例名称为“命名空间__TestOBS”,向该OBS桶的“a/b/c”路径下上传“1.txt”文件。调用API上传文件,只能上传到连接器配置的第一个桶中。

图1 OBS连接器实例
POST https://AstroZero域名/u-route/baas/sys/v1.1/connectors/obs/命名空间__TestOBS/putobject?object=a/b/c/1.txt

请求参数中设置“multipart/form-data”格式的object,即要上传的文件数据。

图2 设置请求参数

上述操作执行完成后,在OBS桶中可查看到“a/b/c”路径下成功上传了“1.txt”文件。

图3 上传结果

响应示例

{
	"resCode": "0",
	"resMsg": "成功",
	"result": {
		"object": "a/b/c/1.txt"
	}
}

状态码

状态码请参见状态码

错误码

错误码请参见错误码

分享:

    相关文档

    相关产品