我有一个基本的 Electron 应用程序,没有什么特别的,基于示例启动项目。
对于我的主窗口,我正在加载一个 URL 作为对 API 端点的 GET 请求
loginWindow.loadURL('https://apiwebsite.com/api/v1.0/authorize?secret_id=my_secret&redirect_uri=<???????>')
作为对此 API 端点的 GET 请求的一部分,我必须发送一个返回 URI。这实际上工作正常,因为我可以让 API 返回并加载我指定的 URI。但是,我不知道要指定什么 URI 才能将其返回到我的应用程序中的某个地方,在那里我可以读取响应并继续。我习惯于 Web 开发,但 Electron 对我来说是新的。在这种情况下,我不遵循如何提交返回 URI。那会是什么?本地开发与打包应用程序相比会发生变化吗?
有一个更好的方法吗?
最佳答案
桌面应用程序的 OAUTH
OAuth for desktop apps推荐这两个关键行为:
这通常会导致以下解决方案之一:
正如您所发现的,除非您使用较旧(已弃用)的 Web View 解决方案,否则基于标准 HTTP 的 Internet 重定向 URL 将不适用于桌面应用程序。
我的资源
虽然我的博客有几个 Electron 代码示例,但您可以轻松地从本地 PC 运行这些示例,以查看这两种解决方案的外观,但实现流程很棘手:
我的样本很深,但希望其中一些对您自己的解决方案有用......
关于javascript - 我应该为 Electron 应用程序中使用的授权调用使用什么重定向 URI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64530295/