微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Firebase身份验证-进行远程服务呼叫时出现未知错误

如何解决Firebase身份验证-进行远程服务呼叫时出现未知错误

我们在Python 2.7 Standard google app引擎上使用Firebase进行身份验证。我们在requirements.txt文件中使用firebase_admin == 3.2.1

我们正在尝试基于文档[此处] [1]和[1] [此处] [2]创建会话cookie。

但是我们收到以下错误

(``连接断开:IncompleteRead(读取146个字节),IncompleteRead(146个字节读取)))代码:UNKNowN消息:进行远程服务调用时发生未知错误:( IncompleteRead(读取146个字节))

执行此语句时

  def post(self):
    logging.info(self.request.body)
    session_data = json.loads(self.request.body)
    
    # Get the ID token sent by the client
    id_token = session_data['idToken']
    expires_in = datetime.timedelta(days=5)
    session_cookie = firebase_admin.auth.create_session_cookie(id_token,expires_in=expires_in,app=None)

[更新]

我们试图执行此代码来验证id_token

     decoded_token = firebase_admin.auth.verify_id_token(id_token)
     uid = decoded_token['uid']

以上代码执行无任何错误。我们能够验证uid(从Firebase控制台)。 [1]:https://firebase.google.com/docs/auth/admin/manage-cookies#python_1 [2]:https://firebase.google.com/docs/reference/admin/python/firebase_admin.auth

解决方法

我们将此代码添加到controller1.py中,并且可以正常工作。

import requests
import requests_toolbelt.adapters.appengine
requests_toolbelt.adapters.appengine.monkeypatch()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?