简介
本文档提供关于图片样式接口的 API 概览以及 SDK 示例代码。
注意:
COS Javascript SDK 版本需要大于等于 v1.4.22。
增加图片样式
功能说明
用于对某一个存储桶设置样式功能,设置样式后,可以方便地对图片进行统一的处理。
示例代码
// sdk的引入及初始化cos请参考 https://cloud.tencent.com/document/product/436/11459function addImageStyle() {const config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', /* 存储桶,必须 */Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */};const host = config.Bucket + '.pic.' + config.Region + '.myqcloud.com/?style';const url = 'https://' + host;const body = COS.util.json2xml({AddStyle: {StyleName: 'style_name1', // 必须,样式名称StyleBody: 'imageMogr2/thumbnail/!50px', // 必须,样式详情}});cos.request({Method: 'PUT',Url: url,Body: body,ContentType: 'application/xml',}, function(err, data){if (err) {// 处理请求失败console.log(err);} else {// 处理请求成功console.log(data);}});}addImageStyle();
参数说明
cos.request 方法参数说明:
参数名称 | 描述 | 类型 | 是否必选 |
Method | 请求方法,固定值 | String | 是 |
Url | 请求的 url,通过 Bucket 和 Region 拼接生成 | String | 是 |
ContentType | 固定值 | String | 是 |
Body | Container | 是 |
回调函数说明
function(err, data) { ... }
参数名称 | 参数描述 | 类型 |
err | Object | |
- statusCode | 请求返回的 HTTP 状态码,例如 200、403、404 等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如 200、403、404 等 | Number |
- headers | 请求返回的头部信息 | Object |
查询图片样式
功能说明
用于查询该 Bucket 下已有的样式。若不使用请求体,则查询该 Bucket 下的全部样式,若使用请求体,则查询请求体中携带的样式名信息。
示例代码
// sdk的引入及初始化cos请参考 https://cloud.tencent.com/document/product/436/11459function describeImageStyles() {const config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', /* 存储桶,必须 */Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */};const host = config.Bucket + '.pic.' + config.Region + '.myqcloud.com/?style';const url = 'https://' + host;cos.request({Method: 'GET',Url: url,Query: {'style-name': 'style_name1', // 非必填,样式名称},}, function(err, data){if (err) {// 处理请求失败console.log(err);} else {// 处理请求成功console.log(data);}});}describeImageStyles();
参数说明
cos.request 方法参数说明:
参数名称 | 描述 | 类型 | 是否必选 |
Method | 请求方法,固定值 | String | 是 |
Url | 请求的 url,通过 Bucket 和 Region 拼接生成 | String | 是 |
Query | Container | 否 |
回调函数说明
function(err, data) { ... }
参数名称 | 参数描述 | 类型 |
err | Object | |
- statusCode | 请求返回的 HTTP 状态码,例如 200、403、404 等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如 200、403、404 等 | Number |
- headers | 请求返回的头部信息 | Object |
- StyleList | 查询到的图片样式集合 | Object |
- - StyleRule | 图片样式名称和参数,当只有一个结果时 StyleRule 是对象,当有多个结果时 StyleRule 是数组 | Object/Array |
- - - StyleName | 图片样式名称 | String |
- - - StyleBody | 图片样式参数 | String |
删除图片样式
功能说明
用于删除某一特定样式。
示例代码
// sdk的引入及初始化cos请参考 https://cloud.tencent.com/document/product/436/11459function deleteImageStyle() {const config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', /* 存储桶,必须 */Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */};const host = config.Bucket + '.pic.' + config.Region + '.myqcloud.com/?style';const url = 'https://' + host;const body = COS.util.json2xml({DeleteStyle: {StyleName: 'style_name1', // 必须,样式名称}});cos.request({Method: 'DELETE',Url: url,Body: body,ContentType: 'application/xml',}, function(err, data){if (err) {// 处理请求失败console.log(err);} else {// 处理请求成功console.log(data);}});}deleteImageStyle();
参数说明
cos.request 方法参数说明:
参数名称 | 描述 | 类型 | 是否必选 |
Method | 请求方法,固定值 | String | 是 |
Url | 请求的 url,通过 Bucket 和 Region 拼接生成 | String | 是 |
Body | Container | 是 | |
ContentType | 固定值 | String | 是 |
回调函数说明
function(err, data) { ... }
参数名称 | 参数描述 | 类型 |
err | Object | |
- statusCode | 请求返回的 HTTP 状态码,例如 200、403、404 等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如 200、403、404 等 | Number |
- headers | 请求返回的头部信息 | Object |
使用图片样式
功能说明
图片处理时直接使用某个样式
示例代码
// 以云上图片处理为例// sdk的引入及初始化cos请参考 https://cloud.tencent.com/document/product/436/11459function handleFileInBucket() {cos.request({Bucket: 'examplebucket-1250000000', // Bucket 格式:test-1250000000,必填Region: 'COS_REGION', // Bucket所在地域,例如ap-beijing,必填Key: '1.png', // 存储在桶里的对象键(例如1.jpg,a/b/test.txt),必填Method: 'POST', // 固定值Action: 'image_process', // 固定值Headers: {// 通过 imageMogr2 接口使用图片缩放功能:指定图片宽度为 200,宽度等比压缩'Pic-Operations': JSON.stringify({is_pic_info: 1,// fileid 设置和Key相同可实现只保留处理后的图片而不保留原图// 指定style为style_name1,即可生成对应样式的图片rules: [{ fileid: 'desample_photo.jpg', rule: 'style/style_name1' }],}),},},function (err, data) {if (err) {// 处理请求失败console.log(err);} else {// 处理请求成功console.log(data);}},);}handleFileInBucket();
参数说明
cos.request 方法参数说明:
参数名称 | 描述 | 类型 | 是否必选 |
Bucket | 存储桶 | String | 是 |
Region | 存储桶所在地域,例如 ap-beijing | String | 是 |
Key | 存储在桶里的对象键(例如1.jpg,a/b/test.txt) | String | 是 |
Method | 请求方法,固定值 | String | 是 |
Action | 图片处理固定值:image_process | String | 是 |
Pic-Operations | 图片处理参数,rule 指定为样式 | Container | 是 |
回调函数说明
function(err, data) { ... }