在主域中的SPA(子域)和API之间共享用户会话

时间:2017-02-25 06:40:28

标签: php api session token single-page-application

我在SPA(单页面应用程序)中工作,我的想法是将它部署在app.mydomain.com中,而事情是在向API发出请求时(mydomain.com中的CakePHP3)我无法从经过身份验证的用户(如果有)获取数据。

我认为我有两个选项,在域之间共享会话,或者使用user_token进行经过身份验证的调用,但我不确定它是如何工作的。

任何想法/推荐?

问候!

1 个答案:

答案 0 :(得分:1)

我建议使用" user_token"。您可以向API中添加身份验证端点,用户在该API中发送凭据,端点返回JWT。然后,您应该在API的每个后续请求中包含此JWT(在Authorization标头中)。然后,API可以基于JWT验证请求。在PHP中,已经有一些很好的库来创建和验证JWT。如果你有时间,你还应该看看OAuth2。