使用PHP登录与OAuth2


Using PHP login along side OAuth2

所以我正在创建一个网站来学习一些PHP/Javascript/HTML/CSS等,我遇到了一个问题,我不能想出一个解决方案。我有一个使用PHP的常规登录表单它使用POST发送数据和身份验证。我还想整合外部Twitch。tv OAuth2 authentication.

通过使用正常的PHP登录,我使用PHP将我的信息存储在PostgreSQL数据库中。我想用OAuth2做类似的事情。例如商店Twitch。TV名作为数据库中的用户名,令牌作为密码。

问题是,我使用的外部身份验证是基于他们的Javascript API,它存储的DOM存储内的信息,我发现是无法通过使用PHP访问。带有令牌的redirect_uri也是一个片段,PHP无法检索到。

我应该只是废弃的JS部分,并尝试做它完全在PHP?

侧面问题:我检查了其他网站也使用Twitch认证,它使用这些回调链接"https://api.nightbot.tv/auth/twitch/callback?code=****"。这些回调到底是什么?

你应该像在JS框架中暗示的那样使用重定向。Facebook也是如此。重定向与令牌一起使用。通常,您在您的端生成一个存储在会话中的随机令牌。一旦用户使用JS API登录,API将重定向到回调页面(在您的示例中是PHP)。在该页面中,验证令牌一次(传递和返回的令牌必须是相同的),并且还从API获得另一个令牌以与API一起使用。此时,您可以通过使用API令牌查询API来获取用户信息。你从API获得用户信息,然后你可以查询你的数据库在这一点上登录用户等。