基于此Google 文档,我可以通过在终端中调用它来生成计算机视觉 API 请求的令牌gcloud auth application-default print-access-token。但是,我将从我的 python 代码调用请求,并尝试从 python 代码生成,如下所示......该代码基于此文档页面with open( environ.get(KEY_ENV_VARIABLE) ) as f: key = json.load(f)iat = time.time()exp = iat + 3600payload = { 'iss': key.get('client_email'), 'sub': key.get('client_email'), 'aud': 'https://vision.googleapis.com/google.cloud.automl_v1beta1', 'iat': iat, 'exp': exp}additional_headers = { "kid": key.get("private_key_id") }signed_jwt = jwt.encode(payload, key.get("private_key"), headers=additional_headers, algorithm='HS256')return signed_jwt.decode('utf-8')它确实生成了令牌,但是与gcloud工具生成的令牌相比,它的长度不同。我知道最简单和快速的肮脏修复是调用os.system('gcloud auth application-default print-access-token'). 但是,如果可能的话,我不想做肮脏的方式,并希望以正确的方式生成令牌。
添加回答
举报
0/150
提交
取消