API 認證機制 #
本 API 透過 AES/CBC/PKCS5Padding 加密/簽章機制產生之 Credential,登入後取得之 Cookie 做為身分識別與授權檢查, 使用者需先通過 申請網址 取得金鑰,完成後可在 API Key 查詢頁 取得下列金鑰資訊。
欄位 | HTTP Request Header | 說明 | 範例 |
---|---|---|---|
Token | api-token | 用於識別 API request 的身分 | Supplier_1234 |
KeyValue | N/A | 32 Bytes AES Secret Key,用於加密與計算簽章,以 Base64 表示 | ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef01234567890= |
KeyIV | N/A | 16 Bytes AES Fixed Initialization Vector,以 Base64 表示 | ABCDEFabcdef01234567890= |
SaltKey | N/A | 32 Bytes 亂數,用於增加簽章複雜度 | ABCDEFGHIJKabcdefghij01234567890 |
Version | api-keyversion | 金鑰版本 | 1 |
Status | N/A | 金鑰狀態 | Enabled |
Sign In #
Sign In 至本 API 的 HTTP request 需包含 4 個 header 與 Credential 密文, 請參考 POST v1/signIn 取得 Cookie 資訊。
取得 WSSID #
為防止 CSRF 攻擊,存取本 API 各 Endpoint 都需於 HTTP Header 帶入 X-YahooWSSID-Authorization
。
可於上一步驟取得 Cookie 後,GET v1/token 取得 Token 資訊。
此 Token 為根據 Cookie 所計算,使用者端可以 Cookie Value 暫存此 Token 的值,不需每個 Request 都重覆計算。
若需要上傳檔案,此 WSSID 亦會用於存放至 Object 的 Header,詳情請見 上傳檔案 章節。