冷知识:COS上传文件时可以同步获取文件信息

 背景介绍

本文将介绍如何在上传文件到 COS 时同步获取文件信息,如图片的宽高、格式等。

目前,可以通过 COS 上传接口,如 PUT Object、CompleteMultipartUploads 等将文件存储至 COS 存储桶中,我们针对以下三种场景提供上传时同步获取文件信息的方式:

图片

ReturnBody 是 COS 对外提供的一种获取文件信息的方式。在上传请求(PUT Object、POST Object、CompleteMultipartUploads)中携带 x-cos-return-body 头部,传入自定义的 ReturnBody 参数,便可在请求响应结果中获取到文件信息 。

Pic-Operations 是上传时的一个请求包头,在上传请求(PUT Object、POST Object、CompleteMultipartUploads)中携带该包头并设置需要返回原图信息的参数,就可在图片上传至 COS 时同步获取原图信息。

说明  Pic-Operations 是由数据万象服务提供的获取图片信息的能力,使用时会产生图片基础处理费用。

主要流程如下图所示:

图片

 场景一:同步获取文件元信息

如需要在上传文件后,同步获取文件元信息,可以通过 ReturnBody 实现。在上传请求头部中携带由文件元信息组成的 ReturnBody 参数,便可在请求响应结果中获取到文件元信息。

ReturnBody 提供以下文件元信息参数

图片

使用时,需要先自定义构造 ReturnBody 参数,这是您希望在返回结果中获取到的文件元信息。

注意   ReturnBody 参数的 key 可以自定义名称,value 必须跟上述 ReturnBody 提供的变量名保持一致。

请求示例

// ReturnBody 参数的 key 可以自定义名称,value 必须跟 ReturnBody 提供的变量保持一致
{
"bucket": "${bucket}",
"key": "${object}",
"filesize": "${size}",
"mime_type": "${mimeType}"
}

再将 ReturnBody 参数转换为字符串,并进行 URL 安全的 Base64 编码,可以得到:

eyJidWNrZXQiOiIke2J1Y2tldH0iLCJrZXkiOiIke29iamVjdH0iLCJmaWxl
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值