媒體處理API中的URL參數(shù)需要編碼(URL Encode)后才能在接口調(diào)用過程中被傳輸。如果URL Encoding方式不當(dāng)會(huì)導(dǎo)致找不到預(yù)期文件。本文介紹媒體處理的URL Encoding方式。
媒體處理URL Encoding方式
媒體處理的URL Encoding基于UTF-8編碼,遵循RFC2396標(biāo)準(zhǔn)。例如:您的源串為阿里云/mts HD+.mp4
,需要被編碼為%E9%98%BF%E9%87%8C%E4%BA%91/mts%20HD%2B.mp4
。更多信息,請(qǐng)參見RFC2396。
URL Encoding標(biāo)準(zhǔn)對(duì)比
媒體處理的URL Encoding遵循RFC2396標(biāo)準(zhǔn)。基于不同標(biāo)準(zhǔn)實(shí)現(xiàn)的lib在最終輸出的編碼上略有區(qū)別,主要是對(duì)空格和加號(hào)(+)采用不同的URL Encoding方式。具體示例如下:
編碼標(biāo)準(zhǔn) | 空格(' ' ) | 加號(hào)('+' ) |
---|---|---|
x-www-form-urlencoded | '+' | '%2B' 說明 x-www-form-urlencoded中空格被轉(zhuǎn)譯成加號(hào)表示連接,所以加號(hào)必須轉(zhuǎn)義。 |
RFC1738 | '%20' | '+' |
RFC2396 | '%20' | '%2B' 說明 RFC2396的保留字中包含加號(hào)(+),所以加號(hào)必須轉(zhuǎn)義。 |
RFC3986 | '%20' | '%2B' |
說明 RFC3986的保留字中包含mark,所以mark必須轉(zhuǎn)義。RFC2396中mark不強(qiáng)制轉(zhuǎn)義。