详情页标题前

腾讯云对象存储图片处理机制介绍

详情页1

简介

对象存储提供了一套便捷的图片处理机制,通过这套机制可以对存储桶中的图片进行一系列的图片处理操作。图片处理机制分为以下三种方式:

方式 类别 说明
下载时处理 同步处理 在图片的 URL 后加上 图片处理参数
上传时处理 持久化处理 上传图片时,在请求包头部中加入 Pic-Operations 项并设置好相应的 图片处理参数
云上数据处理 持久化处理 针对 COS 上已经存在的图片进行处理,处理方式与上传时处理类似,在请求包头部中加入 Pic-Operations 项并设置好相应的图片处理参数

下载时处理

您可以通过在图片的 URL 后加上 图片处理参数,实现访问图片的时候同步获取到处理后的图片。

请求语法

GET /? HTTP/1.1Host: .cos..myqcloud.comDate: Authorization: 

示例

请求

GET /filename.jpg?imageMogr2/format/png HTTP/1.1Host: examplebucket-1250000000.cos.ap-chengdu.myqcloud.comDate: Wed, 28 Oct 2015 20:32:00 GMTAuthorization:XXXXXXXXXXXX

返回

HTTP/1.1 200 OKContent-Type: image/pngContent-Length: 565Date: Fri, 10 Apr 2020 09:35:16 GMTLast-Modified: Fri, 10 Apr 2020 09:35:05 GMTx-cos-request-id: NWFjMzQ0MDZfOTBmYTUwXzZkZV8z****

上传时处理

上传时处理功能可以帮助使用者在上传时实现图片处理。您只需要在请求包头部中加入 Pic-Operations 项并设置好相应的 图片处理参数,就可在图片上传时实现相应的图片处理,并可将原图和处理结果存入到 COS。目前支持32M以内的图片处理。

请求语法

图片上传的请求包与 COS V5 简单上传文件接口一致,只在请求包头部增加图片处理参数。

PUT /<ObjectKey> HTTP/1.1Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: GMT DateAuthorization: Auth StringPic-Operations: <PicOperations>

说明COS 简单上传文件接口,请参见 COS PUT Object 文档Authorization: Auth String(详情请参见 请求签名 文档)。持久化处理的 QPS 限制为100,如您有更高需求请 联系我们

请求内容

Pic-Operations 为 json 格式的字符串,具体参数如下:

参数名称 类型 是否必选 描述
is_pic_info Int 是否返回原图信息,0不返回原图信息,1返回原图信息,默认为0
rules Array 处理规则,一条规则对应一个处理结果(目前支持五条规则),不填则不进行图片处理

rules(json 数组)中每一项具体参数如下:

参数名称 类型 是否必选 描述
bucket String 存储结果的目标存储桶名称,格式为 BucketName-APPID,如果不指定的话默认保存到当前存储桶。
fileid String 处理后文件的保存路径及名称。fileidObjectKey 相同时,处理后的文件将覆盖原文件存储;不相同时将分别存储原文件和处理后文件。名称规则说明:1. 名称需要经过URLEncode。2. 以 / 开头为绝对路径,例如 fileid 值为 /p2/test2.jpg 时,表示在 p2 文件夹中存储了一个文件名为 test2.jpg 的文件。3. 不以 / 开头为相对路径,例如 fileid 值为 p2/test2.jpg 时,表示在 p1 文件夹中新建了一个 p2 文件夹,然后在 p2 文件夹中存储了一个文件名为 test2.jpg 的文件。4. 注意:请不要以 / 结尾,否则会产生空文件名。
rule String 图片处理参数,若按指定样式处理,则以 style/ 开头,后加样式名,如样式名为 test,则 rule 字段为 style/test

返回内容

响应包体具体数据内容如下:

参数名称 类型 描述
UploadResult Container 原图信息

UploadResult 节点内容:

参数名称 类型 描述
OriginalInfo Container 原图信息
ProcessResults Container 图片处理结果

OriginalInfo 节点内容:

节点名称 类型 描述
Key String 原图文件名
Location String 图片路径
ImageInfo Container 原图图片信息
ETag String 原图 ETag 信息(若处理结果图覆盖原图则为结果图 ETag 信息)

ImageInfo 节点内容:

节点名称 类型 描述
Format String 格式
Width Int 图片宽度
Height Int 图片高度
Quality Int 图片质量
Ave String 图片主色调,格式为:0xRRGGBB (RR、GG、BB都是十六进制数,表示红、绿、蓝三种颜色)
Orientation Int 图片旋转角度,取值为1-8的整数:1:旋转0°2:水平翻转3:旋转180°4:垂直翻转5:顺时针旋转90°+水平翻转6:顺时针旋转90°7:顺时针旋转90°+垂直翻转8:逆时针旋转90°
FrameCount Int 图片的帧数。静态图为1,动图为对应的帧数。

ProcessResults 节点内容:

节点名称 类型 描述
Object Container 每一个图片处理结果

Object 节点内容:

节点名称 类型 描述
Key String 文件名
Location String 图片路径
Format String 图片格式
Width Int 图片宽度
Height Int 图片高度
Size Int 图片大小
Quality Int 图片质量
ETag String 处理结果图 ETag 信息
FrameCount Int 图片的帧数。静态图为1,动图为对应的帧数

示例

请求

PUT /filename.jpg HTTP/1.1Host: examplebucket-1250000000.cos.ap-chengdu.myqcloud.comDate: Wed, 28 Oct 2015 20:32:00 GMTAuthorization:XXXXXXXXXXXXPic-Operations: {"is_pic_info":1,"rules":[{"fileid":"test.png","rule":"imageMogr2/format/png"}]}Content-Length: 64
[Object]

返回

HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 645Date: Tue, 03 Apr 2018 09:06:16 GMTStatus: 200 OKx-cos-request-id: NWFjMzQ0MDZfOTBmYTUwXzZkZV8z****
<UploadResult> <OriginalInfo> <Key>filename.jpg</Key> <Location>examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/filename.jpg</Location> <ETag>&quot;580cd6930444576523c25f86ce2af9b1fc2d5484&quot;</ETag> <ImageInfo> <Format>JPEG</Format> <Width>640</Width> <Height>427</Height> <Quality>100</Quality> <Ave>0xa18454</Ave> <Orientation>1</Orientation> <FrameCount>1</FrameCount> </ImageInfo> </OriginalInfo> <ProcessResults> <Object> <Key>test.png</Key> <Location>examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/test.png</Location> <Format>png</Format> <Width>640</Width> <Height>427</Height> <Size>463092</Size> <Quality>100</Quality> <ETag>&quot;eaa4e3d8fd498bbc63be3b71c46b9c61f23e3f0c&quot;</ETag> <FrameCount>1</FrameCount> </Object> </ProcessResults></UploadResult>

注意上传时处理支持 COS V5 的分块上传功能,您在使用 COS V5 的 Complete Multipart Upload 接口时只需在请求包头部中加入 Pic-Operations 项,即可实现图片处理。

POST /<ObjectKey>?uploadId=UploadId HTTP/1.1Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: GMT DateContent-length: SizeAuthorization: Auth StringPic-Operations: <PicOperations>

说明COS 接口请参见 COS Complete Multipart Upload 文档。

云上数据处理

对象存储的图片处理 API 能够对已存储在 COS 的图片进行相应处理操作,并将结果存入到 COS。

请求语法

POST /<ObjectKey>?image_process HTTP/1.1Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: GMT DateContent-length: SizeAuthorization: Auth StringPic-Operations: <PicOperations>

请求内容

Pic-Operations 为 json 格式的字符串,具体参数如下:

参数名称 类型 是否必选 描述
is_pic_info Int 是否返回原图信息,0不返回原图信息,1返回原图信息,默认为0
rules Array 处理规则,一条规则对应一个处理结果(目前支持五条规则),不填则不进行图片处理

rules(json 数组)中每一项具体参数如下:

参数名称 类型 是否必选 描述
bucket String 存储结果的目标 bucket 名称,形如 BucketName-APPID,如果不指定的话默认保存到当前存储桶
fileid String 处理后文件的保存路径及名称。fileidObjectKey 相同时,处理后的文件将覆盖原文件存储;不相同时将分别存储原文件和处理后文件。名称规则说明:1. 名称需要经过URLEncode2. / 开头为绝对路径,例如 fileid 值为 /p2/test2.jpg 时,表示在 p2 文件夹中存储了一个文件名为 test2.jpg 的文件。3. 不以 / 开头为相对路径,例如 fileid 值为 p2/test2.jpg 时,表示在 p1 文件夹中新建了一个 p2 文件夹,然后在 p2 文件夹中存储了一个文件名为 test2.jpg 的文件。4. 注意:请不要以 / 结尾,否则会产生空文件名。
rule String 处理参数,参见对象存储图片处理 API。若按指定样式处理,则以 style/ 开头,后加样式名,如样式名为 test,则 rule 字段为 style/test

返回内容

响应包体具体数据内容如下:

参数名称 类型 描述
UploadResult Container 原图信息

UploadResult 节点内容:

参数名称 类型 描述
OriginalInfo Container 原图信息
ProcessResults Container 图片处理结果

OriginalInfo 节点内容:

节点名称 类型 描述
Key String 原图文件名
Location String 图片路径
ImageInfo Container 原图图片信息
ETag String 原图 ETag 信息(若处理结果图覆盖原图则为结果图 ETag 信息)

ImageInfo 节点内容:

节点名称 类型 描述
Format String 图片格式
Width Int 图片宽度
Height Int 图片高度
Quality Int 图片质量
Ave String 图片主色调,格式为:0xRRGGBB (RR、GG、BB都是十六进制数,表示红、绿、蓝三种颜色)
Orientation Int 图片旋转角度,取值为1-8的整数:1:旋转0°2:水平翻转3:旋转180°4:垂直翻转5:顺时针旋转90°+水平翻转6:顺时针旋转90°7:顺时针旋转90°+垂直翻转8:逆时针旋转90°
FrameCount Int 图片的帧数。静态图为1,动图为对应的帧数。

ProcessResults 节点内容:

节点名称 类型 描述
Object Container 每一个图片处理结果

Object 节点内容:

节点名称 类型 描述
Key String 文件名
Location String 图片路径
Format String 图片格式
Width Int 图片宽度
Height Int 图片高度
Size Int 图片大小
Quality Int 图片质量
ETag String 处理结果图 ETag 信息
FrameCount Int 图片的帧数。静态图为1,动图为对应的帧数。

示例

请求

POST /filename.jpg?image_process HTTP/1.1Host: examplebucket-1250000000.cos.ap-chengdu.myqcloud.comDate: Wed,18 Jan 2017 16:17:03 GMTAuthorization: XXXXXXXXXXPic-Operations: {"is_pic_info":1,"rules":[{"fileid":"test.png","rule":"imageMogr2/format/png"}]}Content-Length: XX

返回

HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 645Date: Tue, 03 Apr 2018 09:06:16 GMTStatus: 200 OKx-cos-request-id: NWFjMzQ0MDZfOTBmYTUwXzZkZV8z****
<UploadResult> <OriginalInfo> <Key>filename.jpg</Key> <Location>examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/filename.jpg</Location> <ETag>&quot;eaa4e3d8fd498bbc63be3b71c46b9c61f23e3f0c&quot;</ETag> <ImageInfo> <Format>JPEG</Format> <Width>640</Width> <Height>427</Height> <Quality>100</Quality> <Ave>0xa18454</Ave> <Orientation>1</Orientation> <FrameCount>1</FrameCount> </ImageInfo> </OriginalInfo> <ProcessResults> <Object> <Key>test.png</Key> <Location>examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/test.png</Location> <Format>png</Format> <Width>640</Width> <Height>427</Height> <Size>463092</Size> <Quality>100</Quality> <ETag>&quot;eaa4e3d8fd498bbc63be3b71c46b9c61f23e3f0c&quot;</ETag> <FrameCount>1</FrameCount> </Object> </ProcessResults></UploadResult>



对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/145032.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 腾讯云容器服务CBS-CSI 常见报错和处理同尘科技

    cbs 盘创建相关问题 1. no available storage in zone 现象:kubectl describe pvc 发现类型为 ProvisioningFailed 的事件,内容包含 no available storage in zone。n原因:资源售罄或者该 zone 不支持这种类型的 cbs 盘。n解决措施:用户可切换到有资源的 …

    2023年12月9日
  • 腾讯云容器镜像服务更新登录密码同尘

    操作场景 本操作指南用于更新个人版实例的登录密码。 注意事项 个人版实例的登录密码为固定密码,且全地域一致。 操作步骤 1. 登录 容器镜像服务 控制台,选择左侧导航栏中的实例管理。在“实例管理”页面即可查看当前账号下的实例列表。选择任意地域的个人版实例。 2. 单击更多 > 重置登录密码,如下图所示: 用户名:当前登录的腾讯云账号。新密码:重新…

    2023年12月9日
  • 阿里云对象存储OSSC下载文件概述-云淘科技

    OSS C SDK提供了丰富的文件下载方式: 下载到本地文件 下载到本地内存 范围下载 断点续传下载 下载过程中,您还可以通过进度条功能查看下载进度。文件下载的完整代码,请参见GitHub。 内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家阿里云企业补贴进行中: 马上申请腾讯云限时活动1折起,即将结束: 马上收藏同尘科技为腾讯云授权服务中心。 购…

    阿里云对象存储 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云对象存储任务回调

    功能说明 数据万象支持自定义设置回调 URL,在任务完成后,系统向该 URL 发送 HTTP POST 请求,请求体中包含通知内容。您可通过配置的回调地址及时了解任务处理的进展和状态,以便进行其他业务操作。 回调内容 任务完成后,系统会向您设置的回调地址发送回调内容,包含完整节点数据的内容展示如下: TaskFinish Success 2022-07-18…

    腾讯云 2023年12月9日
  • 阿里云RDS数据库从自建MySQL迁移至RDS MySQL实例-云淘科技

    本文介绍如何使用数据传输服务DTS(Data Transmission Service),将自建MySQL迁移至RDS MySQL实例。DTS支持结构迁移、全量数据迁移以及增量数据迁移,同时使用这三种迁移类型可以实现在自建应用不停服的情况下,平滑地完成自建MySQL数据库的迁移上云。 支持的源和目标数据库 MySQL间迁移支持以下源或目标数据库。本文以有公网…

    阿里云数据库 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。