INNER CODE UNIT · Python
redirect_request
oneclickvirt/ecs · agent/server.py:101
def redirect_request(self, req, fp, code, msg, response_headers, newurl):
redirected = super().redirect_request(req, fp, code, msg, response_headers, newurl)
if redirected is not None and urllib.parse.urlsplit(newurl).netloc != "api.github.com":
redirected.remove_header("Authorization")
return redirected
req = urllib.request.Request("https://api.github.com" + path, headers=headers)
try:
with urllib.request.build_opener(SafeRedirect()).open(req, timeout=25) as response:
data = response.read(8 * LIMIT + 1)
except urllib.error.HTTPError as exc:
raise ValueError("GitHub API returned %s; no release or asset is assumed" % exc.code) from None
if len(data) > 8 * LIMIT:
raise ValueError("GitHub response is too large")
return json.loads(data)
class Adapter:
def __init__(self, profile_path):