渐进式网络应用中的离线身份验证流程

问题描述

离线时 PWA 中身份验证流程的最佳方法是什么?我正在使用 OIDC 客户端 js 进行在线身份验证流程。

解决方法

授权服务器与您的 API 并排,所以我会同等对待:

  • 如果设备处于离线状态,您将无法调用 API,因此您必须使用本地缓存的数据 - 例如上次渲染视图的数据
  • 如果设备处于离线状态,您也无法执行用户身份验证或令牌刷新操作

OIDC 的行为不会改变 - 您只需要一个 API 访问设计模式,这并不真正取决于您使用的技术:

  • MyView 使用 MyApiClient
  • 在线时,MyApiClient在没有token的情况下发起OAuth相关调用,然后在Authorization头中添加一个token,调用MyApi
  • 离线时,MyApiClient 会改为查看本地缓存并在可能的情况下显示缓存数据,同时通知用户他们处于离线状态

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...