capacitor - 在电容器应用程序中打开 Web 应用程序
问题描述
我想知道 Capacitor App 是否可以只是一种在他自己的 webview 活动中打开 web 应用程序的空壳。
我将多个解决方案视为简单的 window.location 调用、完整的 TWA 应用程序、PWA 元素等,但我想确定解决方案。
该应用程序需要符合 OIDC PKCE(Keycloak 身份验证)
场景一:Webview + window.location
在一些初始化的东西(获取本地属性)之后,我调用一个 window.location 来重定向到 Web 应用程序。webapp 代码将使用 oidc-client.js 处理身份验证,但由于 Webview,我无法执行 SSO(阻止 cookie 等)。
场景 2:可信网络活动 + window.location
与没有 SSO 问题的场景 1 相同(它使用浏览器引擎),但我担心未来的这项技术(安全性,IOS)。
场景三:Webview + 插件认证 + window.location
用户在移动应用程序中通过身份验证,然后被重定向到 Web 应用程序。我没有尝试,因为我害怕技术困难(例如:外部Web应用程序的axios需要访问shell应用程序中的访问令牌请求)
场景 4:Webview + 插件认证 + 外部应用程序作为 web 组件
在我看来,完美的场景。一个带有 Oauth2 插件的轻电容 Web 应用程序,可动态加载外部 Web 组件(PWA 元素?)。外部应用程序将用作 web 组件,而不是 html/js 静态资源。在这种情况下,JS 上下文被维护并且没有重定向。
什么是最先进的?将所有网络应用程序简单地嵌入到 apk 中是可行的还是更好?
解决方案
推荐阅读
- node.js - Firebase 函数在尝试写入存储时抛出错误
- r - R中count.fields函数中的quote =“”是什么意思?
- api - 为什么在资源 ID 的开头使用首字母缩略词?
- css - 如何在 React 中取消单击表格单元格
- python - 为什么这个正则表达式不匹配完整的模式?
- progressive-web-apps - 有什么方法可以阻止用户在 Kiosk 设备中关闭 PWA 应用程序
- reactjs - 组件在反应中被渲染 6 次
- python - 如何在pyspark中将类型从_csv.reader转换为rdd
- sql - 如何计算所有记录并提取上次活动日期
- c++ - 具有格式错误的默认模板参数的未使用成员模板是否需要诊断?