我正在尝试一种方法,以便从 Discourse 在 SPA 中获取用户特定的数据。
大致设置:
SPA 运行在 my-app.com
Discourse 运行在 community.my-app.com
SPA 没有自己的用户管理,我希望使用 Discourse 来管理(因为我们没有其他需要自己用户管理的用户特定内容)。
但是,我想在 SPA 中显示 Discourse 当前登录的用户,以及显示一个未读主题的小部件(这是用户特定的),因此我需要通过 API 从 Discourse 加载数据。
我尝试过的事情:
- 使用 Discourse SSO 路径,然后重定向回我的 SPA。这很好,我得到了当前用户的电子邮件地址、外部 ID 等信息,但没有任何我可以用来请求的内容(令牌/密钥)。
- 尝试修改 cookie 设置,以便可以使用 Discourse cookie 来进行请求(未成功)。
- 我阅读了关于用户 API 密钥的信息,网址是 https://meta.discourse.org/t/user-api-keys-specification/48536,但让用户允许一个应用程序(也就是同一个站点)访问他们的 Discourse 帐户,这让我感觉很奇怪。
有没有可能实现我想要的行为?
此致
Marcel