开始图片处理(API接口)
使用流程
OBS提供了REST接口。REST从资源的角度来观察整个网络,分布在各处的资源由URI(Uniform Resource Identifier)确定,而客户端的应用通过URL(Unified Resource Locator)来获取资源。URL的一般格式为:https://Endpoint/uri。用户只需在浏览器地址栏中输入符合图片处理命令规则的URL,即可获取到处理后的图片。
本章简要展示使用RESTful API接口方式访问和使用图片处理的流程,具体如图1所示。
注册账号并开通服务
在使用图片处理前,您需要拥有一个云服务账号并且成功开通OBS。开通OBS服务成功后图片处理也随之成功开通,使用OBS服务之前必须先充值,充值完成后即可进行访问和使用。如果您已经开通OBS且完成充值,请跳过此章节。
- 打开华为云网站www.huaweicloud.com。
- 单击“注册”。
- 在注册页面,根据提示信息完成注册。
注册成功后,系统会自动跳转至您的个人信息界面。
- 为保证您正常使用图片处理,建议您先创建OBS桶。
上传图片
您可以使用OBS管理控制台、OBS客户端和RESTful API方式上传图片。
具体请参见上传图片。
如果您的桶中已经存在需要处理的图片,请跳过此章节。
如果您需要通过自定义域名使用图片处理,需要为待处理的图片配置匿名用户读取权限。配置请参考对匿名用户授予指定对象的公共读权限进行配置。
处理图片
此章节介绍通过RESTestful API方式进行图片处理操作的URL构成。当已成功开通OBS后,在浏览器地址中输入符合规则的URL即可通过RESTful API方式使用图片处理。
URL组成形式
URL由OBS域名、OBS上的桶名、原图片名称、处理命令或样式名组成。
命令访问方式
URL形式为:https://bucketName.endpoint/objectName?x-image-process=image/commands
- endpoint为桶所在区域对应的终端节点地址,可以在桶的基本信息处获取。有关OBS区域和终端节点的更多信息,请参考地区和终端节点。
- bucketName为OBS中待处理图片存放的桶名。
- objectName为存储在OBS上bucketName桶下的原图片名称,后缀名必须为图片处理支持的图片格式。
- commands为处理命令。处理命令之间和命令参数之间会使用三种分隔符,参见分隔符。如果不输入处理命令,将返回原图。
例如:https://e-share.obs.cn-north-1.myhuaweicloud.com/example.jpg?x-image-process=image/crop,x_100,y_50
分隔符是指URL中用来区分命令访问方式一些关键字段的分隔符号。具体说明如表1所示。
名称 |
样式 |
顺序 |
说明 |
---|---|---|---|
参数分隔符 |
_ |
固定顺序 |
命令参数与参数值之间的分隔符。 |
命令分隔符 |
, |
无关 |
多项处理命令参数之间的分隔符。 |
管道分隔符 |
/ |
有关 |
两组处理命令之间分隔符,参见管道。 |
如果一个图片,需要进行多重处理,如先剪切、后缩略等,则多组操作命令之间,需要以管道分隔符“/”进行连接,执行顺序按管道指定顺序从左至右执行。
例如:https://image-demo.obs.cn-north-1.myhuaweicloud.com/example.jpg?x-image-process=image/resize,w_100,h_100/quality,q_80为两个管道,执行顺序为从左到右,左侧命令处理结果将会作为右侧命令的输入。
样式访问方式
URL形式为:https://bucketName.endpoint/objectName?x-image-process=style/stylename
- endpoint为桶所在区域对应的终端节点地址,可以在桶的基本信息处获取。有关OBS区域和终端节点的更多信息,请参考地区和终端节点。
- bucketName为OBS上的桶名。
- objectName为存储在OBS上bucketName桶下的原图片名称,后缀名必须为图片处理支持的图片格式。
- stylename为在控制台bucketName桶下创建好的样式名称。RESTful API方式现暂不支持其他样式相关等操作,如创建样式、更改样式和删除样式。
样例:https://image-demo.obs.cn-north-4.myhuaweicloud.com/example.jpg?x-image-process=style/stylename