簡體   English   中英

Github API OAuth 令牌驗證

[英]Github API OAuth token validation

有什么方法可以驗證我的 github API 的 OAuth 令牌嗎? “令牌”是指用戶登錄我的網站后得到的令牌。 我使用 cookie 將它存儲在客戶端計算機上,但僅檢查是否有令牌是不夠的:我需要實際檢查令牌是否有效。 目前,這需要我請求信息,然后捕獲錯誤。 然而,這確實損害了我的費率和我的加載速度,因為 github API太慢了……我正在使用 Node.js、express 和octonode庫。

我嘗試查看 github API 文檔,但它們很小而且有點糟糕。 也許這與 OAuth 有關,我不確定。

提前致謝。

來自Github API 文檔的授權

OAuth 應用程序可以使用特殊的 API 方法來檢查 OAuth 令牌的有效性,而不會違反登錄嘗試失敗的正常速率限制。

身份驗證與此特定端點的工作方式不同。 訪問時必須使用基本身份驗證,其中用戶名是 OAuth 應用程序 client_id,密碼是其 client_secret。 無效的令牌將返回 404 NOT FOUND。

你可以用 curl 做到這一點:

curl -u client_id:client_secret https://api.github.com/applications/:client_id/tokens/:token

或者,如果使用 fetch,請使用Curl 來 Fetch

這是根據對 OP 問題的有用評論匯編而成的。

檢查標頭以了解您擁有哪些 OAuth 范圍,以及 API 操作接受哪些內容:

curl -H "Authorization: token OAUTH-TOKEN" https://api.github.com/users/codertocat -I
HTTP/1.1 200 OK
X-OAuth-Scopes: repo, user
X-Accepted-OAuth-Scopes: user
curl -H "Authorization: <TOKEN>" https://api.github.com/

或者

curl https://api.github.com/ -u <USERNAME>:<TOKEN>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM