我被告知无法在端点对象上找到Issuer属性。根据谷歌它应该在那里:Authenticating Users (Frameworks)
import endpoints
firebase_issuer = endpoints.Issuer(
issuer='https://securetoken.google.com/YOUR-PROJECT-ID',
jwks_uri='https://www.googleapis.com/service_accounts/v1/metadata/x509/securetoken@system.gserviceaccount.com')
@endpoints.api(
name='echo',
version='v1',
issuers=[firebase_issuer])
这是我的后端api,我想允许firebase身份验证。
我使用Eclipse和PyDev Google App引擎库来编写这个后端。我看到了错误消息:
来自导入的未定义变量:Issuer
或
firebase_issuer = endpoints.Issuer( AttributeError:'模块'对象没有属性' Issuer'
我跑的时候
答案 0 :(得分:1)
我也有这个问题。基本上,我的解释器引用了只有端点-1.0的gcloud SDK文件。快速入门是将endpoints-2.0安装到通过部署上传的lib目录中,但包含它的appengine_config.py脚本在部署之前不会触发(我认为)。 I.E.它在本地未定义。
要修复,我只是通过运行pip install -r requirements.txt
来安装端点-2.0,它指向您当地的解释器(我的情况恰好是一个虚拟实验室)。这假设您使用快速入门中的repo中的requirements.txt:google-endpoints==2.0.4
。
对我来说这是最简单的,但我相信有一种方法可以在lib目录中指出一个virtualenv,你可以创建和定位快速入门。这样,您的本地解释器将运行与GAE相同的包列表。