概觀
PlayReady Test Server 支援授權要求的查詢字串語法,並提供 URL 型方法來指定授權參數。 這種方法可讓開發人員直接在 URL 中內嵌授權設定,讓您輕鬆測試不同的案例和組態。
語法格式
查詢字串語法會使用標準 URL 參數來指定授權需求:
https://playready.directtaps.net/pr/svc/rightsmanager.asmx?cfg=CONFIGURATION&kid=KEY_ID
支援的參數
組態參數 (cfg)
參數 cfg 會指定授權組態:
- persistent:建立可儲存在裝置上的持續性授權
- 非持續性:建立在應用程式關閉時到期的暫存授權
- 租用:建立具有以時間為基礎的限制的租用授權
- 訂用帳戶:建立以訂用帳戶為基礎的授權
金鑰識別子參數 (kid)
參數 kid 會指定內容解密的金鑰識別碼:
- 必須是有效的 GUID 格式
- 對應至內容的加密金鑰標識碼
- 用來比對授權與加密的內容
範例 URL
基本持續性授權
https://playready.directtaps.net/pr/svc/rightsmanager.asmx?cfg=persistent&kid=12345678-1234-1234-1234-123456789012
非持續性授權
https://playready.directtaps.net/pr/svc/rightsmanager.asmx?cfg=non-persistent&kid=87654321-4321-4321-4321-210987654321
48 小時到期的租賃授權
https://playready.directtaps.net/pr/svc/rightsmanager.asmx?cfg=rental&kid=12345678-1234-1234-1234-123456789012&expiry=48h
測試案例
基本授權取得
- 使用 PlayReady 用戶端產生授權要求
- 使用適當的參數建構 URL
- 將 HTTP POST 要求傳送至建構的 URL
- 處理傳回的授權回應
不同的授權類型
藉由變更 參數來測試各種授權設定 cfg :
- 測試持續性與非持續性行為
- 確認租用到期功能
- 驗證訂用帳戶型存取
錯誤處理
常見的錯誤案例和回應:
無效的金鑰識別碼
-
錯誤:參數格式
kid不正確的 GUID - 回應:HTTP 400 錯誤要求,錯誤詳細數據
不支援的組態
-
錯誤:參數的值
cfg無效 - 回應:HTTP 400 錯誤要求與支援的值
遺漏參數
- 錯誤:未提供必要的參數
- 回應:HTTP 400 錯誤要求與參數需求
最佳做法
- URL 編碼:確保參數值的 URL 編碼正確
- HTTPS 使用方式:一律針對授權要求使用安全連線
- 參數驗證:在提出要求之前先驗證參數
- 錯誤處理:針對各種案例實作健全的錯誤處理
整合範例
JavaScript/HTML5
const licenseUrl = `https://playready.directtaps.net/pr/svc/rightsmanager.asmx?cfg=persistent&kid=${keyId}`;
// Use with your PlayReady implementation
C# 應用程式
string licenseUrl = $"https://playready.directtaps.net/pr/svc/rightsmanager.asmx?cfg=persistent&kid={keyId}";
// Use with PlayReady SDK
相關文件
- PlayReady Test Server 服務 - 主要服務概觀
- CustomData JSON 語法 - 替代 JSON 型方法
- Base64 JSON 語法 - Base64 編碼組態
- PlayReady 測試伺服器 - 完整伺服器檔
支援和疑難解答
針對查詢字串語法的問題:
- 驗證參數格式設定和值
- 檢查特殊字元的 URL 編碼
- 驗證金鑰識別碼格式 (GUID)
- 使用不同的授權設定進行測試
- 檢閱伺服器回應以取得錯誤詳細數據
如需其他支援,請參閱主要的 PlayReady 測試伺服器 檔。