全部產品
Search
文件中心

Object Storage Service:0007-00000004

更新時間:Feb 28, 2024

問題描述

請求回調參數Callback中的callbackUrl部分不合法。

問題原因

您發送的請求中用於上傳回調的Callback參數Base64解碼後會得到一個JSON結構,如果其中callbackUrl部分不是合法的URL,就會導致介面報錯。

callbackUrl參數表示的是檔案上傳成功後,OSS發送回調請求的目的URL地址。介面對該參數的要求是:

  • 支援同時配置最多5個URL,多個URL間以分號(;)分隔。OSS會依次發送請求直到第一個返回成功為止。

  • 如果未配置或者配置值為空白則表示未配置Callback。

  • 支援HTTPS地址。

  • 為了保證正確處理中文等情況,callbackUrl需做URL編碼處理,例如http://example.com/中文.php?key=value&中文名稱=中文值需要編碼成http://example.com/%E4%B8%AD%E6%96%87.php?key=value&%E4%B8%AD%E6%96%87%E5%90%8D%E7%A7%B0=%E4%B8%AD%E6%96%87%E5%80%BC

如果該參數中的URL不合法,就會導致介面返回該錯誤。

問題樣本

比如您的請求中Callback參數解碼後得到:

{
"callbackUrl":"www.callback-example.com:test",
"callbackBody":"bucket=${bucket}&object=${object}&etag=${etag}&size=${size}&mimeType=${mimeType}&imageInfo.height=${imageInfo.height}&imageInfo.width=${imageInfo.width}&imageInfo.format=${imageInfo.format}&my_var=${x:my_var}"
}

其中callbackUrl參數的值為www.callback-example.com:test,這不是一個合法的URL地址,因為test所處的位置應為連接埠號碼,必須是一個正整數,因此介面會返回該錯誤。

解決方案

請確保Callback參數的原始JSON字串中callbackUrl參數值是正確的URL字串,如果存在中文,需要進行URL編碼處理。

相關文檔