我有一个支持 IOS 和 Andriod 的应用程序。登录基于 Firebase 身份验证,注销在应用端完成。
现在我想在后端实现注销功能,我将在其中构建 REST API。我想从此 API 中的 Firebase 注销,以便当应用程序调用此 API 时,用户会注销。下面是API
@RequestMapping(value = "/user/logout/{userId}", method = POST)
public Response<User> logout(Long userId) {
//Want to logout with a firebase call
}
我正在尝试构建一个可以从应用程序中注销用户的 API。目前注销是在App端处理的。我想使用 Java 在后台处理这个问题。 Java 端的处理允许我在用户注销时跟踪一些参数。
我在 Firebase 文档中进行了搜索,该文档仅适用于 Andriod 和 IOS,但无法找到任何从 Firebase 注销以从后端(而不是从应用程序)处理的方法。 firebase是否支持从后端注销?
最佳答案
我实现的解决方案:
使用标记“isAuthenticated”将“idToken”和“refreshToken”保存到客户端(移动应用程序)。
当用户登录时,我在 Redux 中设置一个对象 {idToken: USER_ID_TOKEN, refreshToken: USER_REFRESH_TOKEN, isAuthentitated: true}
当用户注销时,我更新我的对象 {idToken: USER_ID_TOKEN, refreshToken: USER_REFRESH_TOKEN, isAuthentitated: false}
最后,当您需要知道用户是否已通过身份验证时,您可以验证 Redux 中的 isAuthenticated 标志
对于从应用程序到后端的每个请求,我都会发送“refreshToken”以验证用户,当 Firebase 使用新的“idToken”和“refreshToken”向后端发送响应时,我会将此信息转发到应用程序以更新 Redux。
您可以在以下页面找到 Redux 实现:https://alligator.io/react/react-native-redux/
关于java - 在 Java 端从 firebase 应用程序注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48513974/