我正在使用python3请求模块访问已删除的公共ssh密钥的Github v3 API(DELETE / user / keys /:key_id),它返回错误
{'message': 'Not Found''documentation_url':'https://developer.github.com/v3'}
。
我使用python3虚拟环境并请求模块进行处理。
我检查了api的URL和方法,它没有问题。另外,我在URL参数后面添加了access_token='My token'
。但没有效果。我尝试使用命令
curl -H "Authorization: token 93ca7d685602dca9d32e8788ddffafc8e7385003" https://api.github.com/users/codertocat -I
查找令牌的范围。
并且我检查了key_id
是否正确。
def __init__(self):
self.accessToken = '93ca7d685602dca9d32e8788ddffafc8e7385003'
self.rootUrl = 'https://api.github.com'
self.headers = {"Authorization": "token %s" % self.accessToken}
def baseGet(self, url, me='get', data=None):
try:
response = ''
if me == 'get':
response = requests.get(url)
if me == 'post':
response = requests.get(url, data)
if me == 'delete':
response = requests.delete(url)
else:
print('no support')
try:
data = response.json()
except:
data = response.content
return data
except Exception as e:
print('error by', e)
return False
def del_user_public_key(self, key_id):
# del_user_public_key
userkey = self.rootUrl + '/users/keys/%d?access_token=%s' % (key_id, self.accessToken)
print(userkey)
return self.baseGet(userkey, me='delete')
我希望结果的输出为Status 204 No Content,并在github中将其公开删除。