需求
- 本教程中的API調用使用cURL,它是在MacOS和所有linux / unix系統上內置的。如果您運行的是 Windows,請參閱設置捲曲
- 您將需要係統的終端或其他命令行控制台
概覽
使用 Brightcove OAuth API 訪問其他 Brightcove API 分為兩部分
- 獲取客戶端憑據(a
client_id
和client_secret
) 對您需要的帳戶和 API 操作有效 - 這是一次性操作,前提是您將 client_id 和 client_secret 保存在某個安全的地方以備將來使用 - 得到一個
access_token
提供進行 API 調用的授權 - access_token 的有效期為 5 分鐘,因此在大多數情況下,您每次進行 API 調用都會獲得一個
Studio 中還有一個 UI,您可以使用它來獲取和管理客戶憑證 .建議您盡可能使用UI。對於新的API,憑據可能在一段時間內無法通過UI使用,在這種情況下,您可以直接從OAuth API獲取憑據,因為您將在接下來的步驟中學習如何做。
獲取客戶憑證
在這些步驟中,我們將使用cURL命令來獲取Player Management API的客戶端憑據。
步驟
- 確保您有可用的 cURL,如中所述要求 ;您可以通過轉到命令行並鍵入來進行測試
curl
然後按回車鍵——如果安裝了 cURL,您應該會看到如下消息:curl: try 'curl --help' or 'curl --manual' for more information
- 現在,您需要從Studio獲得的兩條信息。通過轉到登錄Studio 工作室。
- 帳號 ID
- BC_TOKEN
注意:這
BC_TOKEN
value 是您打開 Studio 時設置的 cookie。它與您在 Studio 中處理的 API 管理令牌沒有關係。
獲取您的帳戶ID和BC_TOKEN
- 首先,您需要從“帳戶信息”中獲取您的帳戶ID。
- 單擊設置圖標在 Studio 標題中。
- 從下拉列表中選擇帳戶信息。
- 從“帳戶信息”頁面複製您的帳戶ID並保存-在以後的步驟中將需要它。
- 現在打開瀏覽器開發者控制台-在大多數瀏覽器中,您可以通過按OPTION-CMD-i(Mac)或ALT-CTRL-i(Windows)來執行此操作,或者您也應該能夠找到菜單項。
- 在控制台中,粘貼以下JavaScript,然後按return以在模式對話框中顯示您的BC_TOKEN:
- 將BC_TOKEN複製到剪貼板。
- 在此處輸入您的帳戶ID和BC_TOKEN:
帳號代碼:
BC_TOKEN:
提出憑據請求
- 要獲取您的客戶端憑據,請在命令行中復制並粘貼以下cURL命令,然後按回車鍵:
- 響應應該如下所示(格式添加):
{"redirect_url":null,"maximum_scope":[{"identity": {"type":"video-cloud-account","account-id":57838016001}, "operations":["video-cloud/player/all"]}],"name_html":"Sample-Client", "issued_to":"rcrooks@brightcove.com","trusted":null,"expires_at":null, "issued_at":"2015-06-18T20:17:12Z","name":"Sample-Client", "description_html":null,"revoked":null,"type":"credential", "client_secret":"PiQ5s3-tk46DvNBPauknctP3aTIS07zNIa7Kxz3b7hnRMA5JvQdkwa7JpyuX7dnD4RXziA4KEK0n1pEO94Q7, "description":null,"client_id":"b63e5ac2-5264-4a5a-971a-a133bc7bd605", "issued_user":53255203001}
這是不是一個有效的客戶秘密 - 你應該絕不公開客戶機密。
- 輸入值
client_id
和client_secret
下面,因為您隨時都需要這些,所以您需要獲得access_token
.
獲取訪問令牌
這client_id
和client_secret
您在前面的步驟中獲得的用作用戶名密碼當您請求一個身份驗證組合access_token
.在我們將在此處使用的 cURL 中,您可以將這些作為--user
範圍。在其他語言中,您將在HTTP請求的基本授權標頭中傳遞這些參數:
Authorization: Basic {client_id:client_secret}
注意:整個client_id:client_secret 必須進行 Base64 編碼以被 OAuth API 接受。 cURL 將自動對 --user 憑據進行 Base64 編碼,但在其他語言中,您需要自己對其進行 Base64 編碼。
步驟
- 要獲取access_token,請將以下cURL命令複製並粘貼到命令行中,然後按Enter:
- 輸出應如下所示:
{"access_token":"ACkkpftcuhyzqdf4ftxm304za3anhziG0Ni5-S_dplxMNYNrSrBZRgJL3sf_U38ZZVDdgkmWtrb0_GRZj-VzWOAFWgpEYwgwIWLjcGsTI-9QMUMNv2eFj33clsWFHnGLzgtdcILXpR-wPM0LzKKzRahodwofPfuExYCej18Wpt1x7DxOJDySEjCGOWiTuZVKp1QjG0_nqD9T3TpK3Cchv0suVRTGkYrs15qYSKdxh2-e5XbUiKKptNl8ryvMriavPN66fOh17c09Q0525OPqejkU6uERPTw-sTLU_QjJbRV6psxoSVYKRAetsBikH9XRJbZCSt2JP88O","token_type":"Bearer","expires_in":300}
- 此令牌可用於驗證對播放器管理API的調用5分鐘(然後您需要獲取新令牌)。令牌與HTTP請求一起傳遞到Authorization標頭中:
Authorization: Bearer access_token value