我的问题类似于How to use OAuth with Github in a Safari extension ,但是,那里的答案解释了如何将 oauth 与旧的 safari 扩展 API 一起使用。我正在尝试将 OAuth 与新的 Safari App Extension API ( https://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/SafariAppExtension_PG/ ) 结合使用。
除了提供注入(inject)内容脚本的能力外,新的 API 还允许编写 native 代码。我应该在哪里进行身份验证?我还开发了一个 chrome 扩展,Google 提供了一个用于检索 OAuth token 的 API ( https://developer.chrome.com/apps/identity )——但是我没有看到任何类似的 Safari 应用程序扩展。
非常感谢任何帮助!
最佳答案
我目前正在研究与您的需求和逻辑、证书(如果您使用它们)持久性、访问和刷新 token 类似的 Safari 应用程序扩展,所有这些都转到 native 代码。从 SFSafariExtensionHandler 您可以控制事件窗口/选项卡和选项卡中的所有页面,还可以接收来自页面的回调。 对于 OAuth,使用任何 native 库。这解决了您对逻辑的大部分需求。我正在使用 AeroGear 中的这个. 页面控制需要一些调整。
关于javascript - 如何在 Safari 应用程序扩展中将 OAuth 与 Facebook 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39905874/