功能描述
极智压缩通过智能判断图片的主观质量进行自动调节,在不改变图片原格式的基础上,使图片体积相比原图有显著的降低,同时在视觉效果上可以最大程度贴近原图,帮助您减少图片访问流量、提升图片访问速度。该功能支持以下处理方式:
下载时处理
上传时处理
云上数据处理
授权说明
下载时处理:授权策略中 action 设置为
cos:GetObject
。上传时处理:授权策略中 action 设置为
cos:PutObject
。云上数据处理:授权策略中 action 设置为
cos:GetObject
、cos:PutObject
(注意 GetObject 对应的 resource 为源文件,PutObject 对应的 resource 为转存的文件)。服务开通
使用该功能需提前开通数据万象,并绑定存储桶。详情请参见 绑定存储桶。
使用该功能需提前通过控制台或接口开通极智压缩 API 使用功能。详情请参见 图片极智压缩。
使用限制
使用该接口时,请先确认相关限制条件。详情请参见 使用限制。
不支持处理 COS 上的归档存储类型和深度归档存储类型的图片,如果需要处理此类型文件,请先 恢复归档文件。
费用说明
图片极智压缩为付费服务,产生的费用将由数据万象收取,详细计费说明可参见 图片处理费用。
如果采用下载时处理的方式,且通过外网进行下载,调用会产生 流量费用。
如果图片为 COS 上的低频存储类型,调用接口会产生 COS 低频数据取回费用。
接口形式
下载时处理
GET /<ObjectKey>?imageSlim HTTP/1.1Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: <GMT Date>Authorization: <Auth String>
上传时处理
PUT /<ObjectKey> HTTP/1.1Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: GMT DateAuthorization: Auth StringPic-Operations:{"is_pic_info": 1,"rules": [{"fileid": "exampleobject.jpg","rule": "imageSlim"}]}
云上数据处理
POST /<ObjectKey>?image_process HTTP/1.1Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: GMT DateContent-length: SizeAuthorization: Auth StringPic-Operations:{"is_pic_info": 1,"rules": [{"fileid": "exampleobject.jpg","rule": "imageSlim"}]}
说明:
Authorization:携带鉴权信息,用于验证请求的合法性,Pic-Operations 头部需写入签名信息中,详情请参见 请求签名 文档。
Pic-Operations 为 json 格式的字符串,具体参数信息可参考 图片处理机制介绍。
当
fileid
与 ObjectKey
相同时,处理后的图片将覆盖原图存储;不相同时将分别存储原图和处理后图片。fileid
的值需要经过 URLEncode。处理参数说明
参数 | 含义 | 是否必选 |
ObjectKey | 对象文件名,例如 folder/sample.jpg。 | 是 |
imageSlim | 固定参数,表示极智压缩。 | 是 |
说明:
使用下载时处理时,可通过 X-Slimflag 响应头部来判断图片是否已压缩,该响应头包含以下三个值:
0:表示压缩失败;
1:表示压缩成功;
2:表示未进行压缩,返回了原图。
实际案例
假设原图格式为 png,图片大小为1335.2KB,如下图所示:


将图片进行极智压缩处理,请求 URL 如下:
http://example-1258125638.cos.ap-shanghai.myqcloud.com/sample.png?imageSlim
效果如下:


压缩率对比
格式 | 图片大小 |
png(原图) | 1335.2KB |
png(极智压缩图) | 549KB(压缩率58.88%) |