gpt4 book ai didi

github - 如何通过 GitHub 的 v3 API 添加 ssh key ?

转载 作者:行者123 更新时间:2023-12-01 09:29:57 28 4
gpt4 key购买 nike

我正在尝试通过 GitHub 的 v3 API 添加一个 ssh key ,但它似乎不起作用。

我正在做的是基于给出的说明 here .

更具体地说,我正在使用以下内容:

KEY=$( cat ~/.ssh/id_rsa.pub )
TITLE=${KEY/* }
# the '/* ' above deletes every character in $KEY up to and including the last
# space.

JSON=$( printf '{"title": "%s", "key": "%s"}' "$TITLE" "$KEY" )

TOKEN=$( cat /path/to/tokenfile )

curl -s -d "$JSON" "https://api.github.com/user/keys?access_token=$TOKEN"

当我运行上面的程序时,我得到的响应是:
{
"message": "Not Found"
}

...而且,果然,当我检查我的 GitHub 帐户时, $KEY不在 ssh-keys 中列出1。



我究竟做错了什么?



更多详情

我得到同样的 "message": "Not Found"如果我只是运行,则响应
curl -s "https://api.github.com/user/keys?access_token=$TOKEN"

如果我更换 -s以上与 -i我看到,确实,返回的状态是 404 Not Found .然而,返回的状态
curl -i "https://api.github.com/user/keys"

401 Unauthorized .

1 我知道 $TOKEN 中的访问 token 很好,因此这不是 "message": "Not Found" 的原因回应,因为
curl -s "https://api.github.com/user/repos?access_token=$TOKEN"

返回正确的信息,以及
curl -s "https://api.github.com/user/repos"

返回
{
"message": "Requires authentication"
}

最佳答案

截至 2014 年 2 月,“用户”范围不再提供足够的访问权限来管理用户的 SSH key 。范围必须定义为:

  • read:public_key - 提供对用户 SSH key 的读取访问权限
  • write:public_key - 允许应用读取现有 key 并创建新 key
  • admin:public_key - 允许应用读取、写入和删除 key
  • 关于github - 如何通过 GitHub 的 v3 API 添加 ssh key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16672507/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com