开发者社区> 问答> 正文

样式之如何实现样式相关操作?


图片服务提供了一些 Style 相关的操作,用于增删查改样式(Style)。

Put Style


在某个频道(Channel)下,创建一个样式(Style),将复杂的图片服务的处理参数,保存成一个样式,创建样式后,通过样式实现与参数同样的图片处理效果。

请求语法PUT /?style&styleName=YourStyleName  HTTP/1.1
Host: ChannelName.img-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

<?xml version="1.0" encoding="UTF-8"?>
<Style>
<Content>100w_200h.jpg</Content>
</Style>





请求参数(Request Parameters)

参数名称说明是否必须取值范围
styleName待创建的Style的名称参见style命名规则


请求元素(Request Elements)

参数名称说明是否必须取值范围
ContentStyle对应的内容,表示处理图像所用的参数参见图像处理参数


请求示例PUT /?style&styleName=style-example HTTP/1.1
Host: channel-example.img-cn-hangzhou.aliyuncs.com  
Date: Thu, 08 Jan 2015 06:17:55 GMT
Authorization: OSS 2onpuorvhikxergnrzmwkn0t:Hyc0UH+CXKQv6ExbZMi+HPn4Gxc=

<?xml version="1.0" encoding="UTF-8"?>
<Style>
<Content>100w_200h.jpg</Content>
</Style>





返回示例HTTP/1.1 200 OK
x-img-request-id: 54AE211379B222C77F000016
Date: Thu, 08 Jan 2015 06:17:55 GMT
Connection: close
Content-Length: 0  
Server: AliyunOSS





细节分析

  1. 如果Channel不存在,返回404 Not Found错误,错误码:NoSuchChannel。
  2. 每个Channel下最多能创建50个Style。如果超过50个,Create Style时返回403 Forbidden错误,错误码:AccessDenied,错误消息为:Your style count is exceeded 50.
  3. 只有Channel的拥有者才能在该Channel下创建Style。如果试图在一个不属于自己的Channel下创建Style,返回403 Forbidden错误,错误码:AccessDenied。
  4. 如果待创建的Style已经存在,则会更新原有的Style 。


List Style


List Style可以获取某个频道(Channel)下的所有样式(Style)的信息。

请求语法GET /?style HTTP/1.1
Host: ChannelName.img-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue





响应元素(Response Elements)

参数名称说明
NameStyle名称
ContentStyle对应的内容
CreateTimeStyle创建时间
LastModifyTimeStyle最后修改的时间


请求示例GET /?style HTTP/1.1
Host: channel-example.img-cn-hangzhou.aliyuncs.com
Date: Thu, 08 Jan 2015 06:28:02 GMT
Authorization: OSS 2onpuorvhikxergnrzmwkn0t:zDI6c1trJAGHbR8rreyzq6lMq9U=





返回示例HTTP/1.1 200 OK
x-img-request-id: 54AE237279B222C77F000023
Date: Thu, 08 Jan 2015 06:28:02 GMT
Connection: close
Content-Type : application/xml
Content-Length: 568  
Server: AliyunOSS

<?xml version="1.0" encoding="UTF-8"?>
<StyleList>
  <Style>
    <Name>style-example1</Name>                    
    <Content>400w</Content>
    <CreateTime> Thu, 08 Jan 2015 06:28:02 GMT </CreateTime>              
    <LastModifyTime> Thu, 08 Jan 2015 06:28:02 GMT</LastModifyTime>
  </Style>
  <Style>
    <Name>style-example2</Name>                    
    <Content>400w</Content>
    <CreateTime>Thu, 08 Jan 2015 06:28:02 GMT</CreateTime>              
    <LastModifyTime> Thu, 08 Jan 2015 06:28:02 GMT</LastModifyTime>
  </Style>
</StyleList>





细节分析

  1. 如果频道(Channel)不存在,返回404 Not Found错误,错误码:NoSuchChannel。
  2. 只有频道(Channel)的拥有者才能List该频道(Channel)下的样式(Style)。如果试图在一个不属于自己的频道(Channel)下List Style,返回403 Forbidden错误,错误码:AccessDenied。


Get Style


Get Style可以获取某个样式(Style)的属性信息,包括样式名称、内容,以及创建和最后修改时间。

请求语法:GET /?style&styleName=YourStyleName HTTP/1.1
Host: ChannelName.img-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue





请求参数(Request Parameters)

参数名称说明是否必须取值范围
styleName需要获取的Style的名称参见style命名规则


响应元素(Response Elements)

参数名称说明
NameStyle名称
ContentStyle对应的内容
CreateTimeStyle创建时间
LastModifyTimeStyle最后修改的时间


请求示例GET /?style&styleName=style-example HTTP/1.1
Host: channel-example.img-cn-hangzhou.aliyuncs.com
Date: Thu, 08 Jan 2015 06:20:12 GMT
Authorization: OSS 2onpuorvhikxergnrzmwkn0t:SQe/ZdW92fmFgLEiIwsH4f8YTA8=





返回示例HTTP/1.1 200 OK
x-img-request-id: 54AB9937B703C78879000167
Date: Thu, 08 Jan 2015 06:20:12 GMT
Connection: close
Content-Type : application/xml
Content-Length: 236  
Server: AliyunOSS

<?xml version="1.0" encoding="UTF-8"?>
<Style>
  <Name>jujht9w0d4</Name>
  <Content>erp2g2twla</Content>
  <CreateTime>Thu, 08 Jan 2015 06:20:12 GMT</CreateTime>
  <LastModifyTime>Thu, 08 Jan 2015 06:20:12 GMT</LastModifyTime>
</Style>





细节分析

  1. 如果频道(Channel)不存在,返回404 Not Found错误,错误码:NoSuchChannel。
  2. 如果样式(Style)不存在,返回404 Not Found错误,错误码:NoSuchStyle。


Delete Style


Delete Style用来删除某个样式(Style)。

请求语法DELETE /?style&styleName=YourStyleName HTTP/1.1
Host: ChannelName.img-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue





请求参数(Request Parameters)

参数名称说明是否必须取值范围
styleName待删除的Style的名称参见style命名规则


请求示例DELETE /?style&styleName=style-example HTTP/1.1
Host: channel-example.img-cn-hangzhou.aliyuncs.com
Date: Thu, 08 Jan 2015 06:30:20 GMT
Authorization: OSS 2onpuorvhikxergnrzmwkn0t:mK217ZMjVP30w4Q99vYwBEgddqw=





返回示例HTTP/1.1 204 No Content
x-img-request-id: 54AE23FC79B222C77F000028
Date: Thu, 08 Jan 2015 06:30:20 GMT
Connection: close
Content-Length: 0  
Server: AliyunOSS





细节分析

  1. 如果频道(Channel)不存在,返回404 Not Found错误,错误码:NoSuchChannel。
  2. 不管样式(Style)存不存在,只要删除操作合法,删除成功后都会返回204 No Content。
  3. 只有频道(Channel)的拥有者才能删除该频道下的样式(Style)。如果试图删除一个不属于自己的频道下的样式,返回403 Forbidden错误,错误码:AccessDenied。

展开
收起
青衫无名 2017-10-23 11:38:57 1727 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载