有没有办法验证我的OAuth令牌的github API?通过令牌'我指的是用户登录我的网站后得到的那个。我使用cookie将它存储在客户端计算机上,但只是检查是否有令牌是不够的:我需要实际检查令牌是否有效。目前,这要求我提出信息请求,然后捕获错误。但是,由于github API是 sloooow ,这实际上损害了我的速率以及我的加载速度......我正在使用Node.js,express和octonode库。
我尝试查看github API文档,但它们很小并且有些过时。也许这与OAuth有关,我不确定。
提前致谢。
答案 0 :(得分:0)
curl -H "Authorization: <TOKEN>" https://api.github.com/
或者
curl https://api.github.com/ -u <USERNAME>:<TOKEN>
答案 1 :(得分:0)
来自Github API docs on authorizations:
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
或者,如果使用访存,则使用Curl to Fetch。
这是根据关于OP的问题的有用评论汇编而成的。
答案 2 :(得分:0)
检查标头以查看您拥有的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