管道

更新時間:
Copy as MD

管道是一種可以實現多種處理任務順序執行的機制。您可以通過管道在一次訪問中按照順序完成對檔案的不同處理。

訪問規則

URL通過處理參數action1action2實現資料處理。如果有多任務,執行順序按管道指定順序執行,管道的分隔字元是豎線(|)。

以下規則表示先對檔案做action1處理,然後再做action2處理,最後輸出結果。

  • 同步處理管道訪問規則:<檔案URL>?x-oss-process=<action1>|<action2>

  • 非同步處理僅支援POST訪問,管道訪問規則:

    POST <檔案URL>?x-oss-async-process HTTP/1.1
    Host: <HOST HEADER>
    Date: <DATE HEADER>
    Authorization: <AUTH HEADER>
    
    x-oss-async-process=<action1>|<action2>

使用限制

  • 同步處理:同步處理能力中的圖片處理支援使用管道,文檔處理中的文檔線上預覽和文檔線上編輯不支援使用管道。

  • 非同步處理:非同步處理能力僅支援在其尾部串聯sys/saveas以及/notify樣本如下:

    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****************
     
     // 將檔案example.docx轉換為PNG格式的圖片檔案。
    x-oss-async-process=doc/convert,target_png,source_docx|sys/saveas,b_dGVzdC1idWNrZXQ,o_ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw/notify,topic_ZG9jX2ltYWdlcw

使用樣本

圖片處理

樣本一

先對圖片做按高度300縮減,然後再加上文字浮水印,浮水印內容是:“Hello 圖片服務!” 。

https://oss-console-img-demo-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/example.jpg@300h|watermark=2&text=SGVsbG8g5Zu-54mH5pyN5YqhIQ

管道1

樣本二

先對圖片做文字浮水印,浮水印內容是:“Hello, 圖片服務!”,浮水印位置在右下角,然後再對圖片做圖片浮水印,浮水印檔案是panda.png,浮水印位置在中間。

https://oss-console-img-demo-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/example.jpg@watermark=2&text=SGVsbG8g5Zu-54mH5pyN5YqhIQ&p=9|watermark=1&object=cGFuZGEucG5n&t=90&p=5

管道2

文檔處理

樣本

  • 處理方式

    1. 將格式為DOCX的檔案example.docx轉換為PNG格式的圖片檔案。

    2. 將轉換完成的圖片檔案儲存體到oss://test-bucket/doc_images/路徑中,並將通知發送到doc_imagesMNS主題。

  • 處理URL

    https://doc-demo.oss-cn-hangzhou.aliyuncs.com/example.docx?x-oss-async-process=doc/convert,target_png,source_docx|sys/saveas,b_dGVzdC1idWNrZXQ,o_ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw/notify,topic_ZG9jX2ltYWdlcw

    • action1doc/convert,target_png,source_docx,表示將格式為DOCX的檔案轉換為PNG格式的圖片檔案。

    • action2sys/saveas,b_dGVzdC1idWNrZXQ,o_ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw/notify,topic_ZG9jX2ltYWdlcw,表示將轉換完成的圖片檔案儲存體到oss://test-bucket/doc_images/路徑中,並在轉換完成後將通知發送到doc_imagesMNS主題。