def make_auth_header(installation_id):
utcnow = datetime.utcnow() + timedelta(seconds=-5)
duration = timedelta(seconds=30)
payload = {
"iat": utcnow,
"exp": utcnow + duration,
"iss": 2510
}
pem = get_private_pem()
encoded = jwt.encode(payload, pem, "RS256")
headers = {
"Authorization": "Bearer " + encoded.decode("utf-8"),
"Accept": "application/vnd.github.machine-man-preview+json"
}
auth_url = "https://api.github.com/installations/{}/access_tokens".format(installation_id)
r = requests.post(auth_url, headers=headers)
if not r.ok:
print(r.json()["message"])
r.raise_for_status()
token = r.json()["token"]
return {
"Authorization": "token {}".format(token)
}
评论列表
文章目录