未找到端点Issuer属性。

时间:2017-02-02 11:13:45

标签: google-app-engine firebase google-oauth

我被告知无法在端点对象上找到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'

我跑的时候

1 个答案:

答案 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相同的包列表。