我正在尝试通过 GitHub API 对用户进行身份验证。我尝试了两种方法,通过用户名和密码进行身份验证以及通过个人访问令牌(PAT)进行身份验证。
curl -u devmania1223 https://api.github.com/user /*via username and pword*/
curl -u ghp_I60uniHdf6UKDCkyde1InP7kwRwsw2fD0wx https://api.github.com/user /*via personal access token*/
输入的用户名和密码,PAT 正确,但响应不正确。
{
"message": "Requires authentication",
"documentation_url": "https://docs.github.com/rest/reference/users#get-the-authenticated-user"
}
那么,curl 命令有什么问题?

尝试并使用令牌作为密码:
curl -i -u your_username:$token https://api.github.com/users/octocat
不要忘记另一个选项:gh
(GitHubcli/cli
),使用gh auth login
# authenticate against github.com by reading the token from a file
$ gh auth login --with-token < mytoken.txt

假设您的个人访问令牌是55a6f290558d11ecbeaf787b8ab956b4。现在,使用 GitHub API 发出请求,将令牌放入“授权”标头中:
/usr/bin/curl -H "Authorization: Bearer 55a6f290558d11ecbeaf787b8ab956b4" https://api.github.com/user
为什么?好吧,GitHub 提供给您的令牌类型称为“OAuth 2.0”令牌,您只需要以这种方式使用它。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(73条)