要求鎖定

上次更新: 2023-11-04
  • 建立對象:
  • Developer
    User

為了減少篡改請求的機會,提供簡單的鎖定工具。

如果已設定attribute::RequestLock,則必須將鎖定值附加至請求,格式為 &xxxx,其中xxxx是四位數的十六進位值。 此十六進位值是使用套用至 修飾元 請求部分(在「?」之後) 會將URL路徑與 修飾元)。 這必須在要求完全經過http編碼之後,但在其(可選)模糊化之前完成。 將請求去模糊化後,伺服器會針對修飾元字串使用相同的雜湊演演算法(排除最後5個字元,其中包含鎖定值)。 如果產生的鍵與鎖定不符,則會拒絕要求。

重要

如果啟用此功能,請注意,其使用有一定的限制,包括:
— 此Dynamic Media使用者介面可能不會顯示正確的詳細資料 上次發佈日期 欄位。 不過,這不會影響發佈。
— 目前,HLS視訊串流不適用於 要求模糊化 和 要求鎖定 已啟用。
— 目前,有些Dynamic Media Viewers無法在 要求模糊化要求鎖定 已啟用。

產生請求鎖定值的C++範常式式碼:

unsigned int lockValue(const char *str)
{
    unsigned int sum = 0;
    if (str == NULL)
        return sum;
    for (; *str; ++str)
        sum = (sum*131 + *str) & 0xffff;
    return sum;
}

另請參閱

HTTP編碼要求模糊化attribute::RequestLock

此頁面上的