异步处理请求返回时仅返回任务ID,您需要在处理请求内添加消息通知参数,以在数据处理完成时获取到数据处理任务的结果。
注意事项
仅异步处理支持消息通知。
消息通知仅支持轻量消息队列SMQ(原MNS)主题。关于SMQ的更多信息,请参见SMQ快速入门。
参数说明
使用notify
参数时,您需要携带以下选项:
参数 | 是否必选 | 描述 |
topic | 是 | SMQ主题名称,主题名称需经过URL安全的Base64编码。具体操作,请参见水印编码。 |
使用REST API
如果对程序自定义要求较高,您可以直接发起REST API请求。直接发起REST API请求需要手动编写代码计算签名。
您可以在调用PostObject接口处理服务时,通过Body的方式传递x-oss-async-process
,然后在处理请求中增加notify参数接收处理结果消息通知,消息通知仅支持SMQ主题,关于SMQ的使用,请参见Python SDK版本说明。
如下列举各种接收SMQ消息通知场景的处理示例。
使用处理参数处理文档转换并接收SMQ消息通知
转换信息
转换前
文件类型:DOCX
文件名称:
example.docx
转换后
文件类型:PNG
文件存储路径:
oss://test-bucket/doc_images/
消息通知
将转换结果通知发送到主题名称为
test-topic
的SMQ。
处理示例
POST /exmaple.docx?x-oss-async-process HTTP/1.1
Host: doc-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS qn6q**************:77Dv****************
// 将类型为DOCX的文件example.docx转换为PNG格式的图片文件,并将转换完成的图片存储到oss://test-bucket/doc_images/路径中,最后将转换结果通知发送到主题名称为test-topic的SMQ。
x-oss-async-process=doc/convert,target_png,source_docx|sys/saveas,b_dGVzdC1idWNrZXQ,o_ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw/notify,topic_dGVzdC10b3BpYw
使用样式参数处理视频转码并转存至指定Bucket
转码信息
转码前
视频格式:AVI
视频名称:
example.avi
转码后
视频格式:MP4
视频名称:
outobjprefix.mp4
视频存储路径:
oss://outbucket/outobjprefix.mp4
消息通知
将转码结果通知发送到主题名称为
test-topic
的SMQ。
POST /exmaple.avi?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS qn6q**************:77Dv****************
// 使用名为examplestyle的样式将文件example.avi进行视频转码,转码完成后将得到的文件保存为oss://outbucket/outobjprefix.mp4,最后将转换结果通知发送到主题名称为test-topic的SMQ。
x-oss-async-process=style/examplestyle|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ/notify,topic_dGVzdC10b3BpYw
x-oss-process操作对应消息格式
功能模块 | x-oss-process操作 | 消息格式 |
文档处理 | ||
媒体处理 | ||
文件处理 |
文档内容是否对您有帮助?