小编ski*_*zzo的帖子

Firebase + React Native:离线身份验证

我在React Native iOS应用程序中使用Firebase,主要用于存储用户数据和用户身份验证,当设备实际具有有效的网络连接时,该功能非常有用.

说到Firebase的离线功能,它看起来像这样:

问题:用户启动没有网络连接的应用程序无法执行任何操作,因为他们从未登录过

以下是重现此行为的步骤:

第1步:注销用户启动具有网络连接的应用程序

  1. 用户点击"Facebook登录"按钮
  2. Firebase使用Facebook身份验证登录
  3. onAuthStateChanged (user) 正在使用登录用户作为参数调用
  4. 获得的令牌user.getToken()被发送到我的服务器,该服务器生成一个自定义令牌(generatedToken),可用于登录Firebase身份验证使用signInWithCustomToken (generatedToken),因此保存在本地存储中
  5. 用户愉快地读取和写入Firebase数据库,更改立即与Firebase服务器同步

第2步:登录用户启动具有网络连接的应用程序

  1. 应用程序意识到generatedToken在本地存储中有一个
  2. generatedToken 是用来 firebase.auth().signInWithCustomToken (..)
  3. (与步骤1.3相同)
  4. (与步骤1.4相同)
  5. (与步骤1.5相同)
  6. 网络连接丢失:用户仍然登录(onAuthStateChanged (user)未与所谓nulluser,喜欢它的后的情况下手动注销),因此仍然可以读写到火力地堡数据库
  7. 网络连接已恢复:更改与Firebase服务器同步

第3步:登录用户启动应用程序,无需网络连接

  1. 应用程序意识到generatedToken在本地存储中有一个
  2. generatedToken 是用来 firebase.auth().signInWithCustomToken (..)
  3. firebase.auth().signInWithCustomToken (..) 失败,因为没有网络连接
  4. onAuthStateChanged (user)被称为与null作为user
  5. 用户根本无法使用Firebase数据库,因为所有读/写请求都因缺少身份验证而失败

尝试的解决方案

  1. 在初始化之后persistenceEnabled立即true在Objective-C/AppDelegate.m中设置FIRApp …

offline firebase react-native firebase-authentication firebase-realtime-database

8
推荐指数
1
解决办法
4018
查看次数

超薄3框架+饼干

我一直在使用Slim Framework 2但是想要切换到最新的版本3.在阅读升级指南时,我对他们有点沮丧只是说" 已经从核心中删除了cookie "并且指的是图片github repo包含的代码片段根本不适用于Slim.

任何人都可以共享一些工作代码片段,使用Slim 3设置和获取一些虚拟cookie吗?谢谢.

php cookies slim

4
推荐指数
4
解决办法
7295
查看次数