我正在尝试使用Scribe的OAuth登录机制登录Facebook,该机制构建了一个URL https://www.facebook.com/dialog/oauth?client_id=1928545420713067&redirect_uri=http://localhost:23080/integration/auth/facebook/callback&state=a5312c35-ab4f-4690-8086-b6ff6b249f52
它现在将我重定向到带有登录对话框的浏览器,我需要输入我的用户名和密码并登录,然后OAuthService触发回调。
有没有办法自动登录机制而不输入' UserName'每次触发Oauth身份验证时都会输入密码值,但是将其存储在某处并在我需要登录时自动使用它。
我基本上想要摆脱登录对话框并完全在后端登录。
答案 0 :(得分:1)
如果我的理解是正确的,那么您首先没有正确使用OAuth。要解决您遇到的问题,OAuth已经提供了提供令牌而不是密码的解决方案。
使用OAuth每次成功登录后,您都会获得令牌和用户ID作为回应。这需要在下次从程序中使用以请求用户的个人信息。
此外,您必须至少允许用户在正宗的Facebook屏幕上输入用户名密码。在OAuth流程中,请求站点永远不知道实际密码。
请参阅此处的流程
https://www.digitalocean.com/community/tutorials/an-introduction-to-oauth-2