我尝试使用spring-social创建一个通过OAuth2连接到Fitbit的应用。 I've had some troubles with this但我想我已经搞清楚了。我注意到OAuth进程是通过对ConnectController进行POST来启动的。为什么用POST而不是GET完成?我想制作它以便我可以将链接放入聊天室,用户可以点击该聊天室来授权我的应用使用他们的Fitbit信息,这意味着我想通过GET启动它。有没有理由不这样做?如果我要对这种效果进行更改(通过继承ConnectController),我会遇到技术/安全问题吗?
答案 0 :(得分:1)
有两个原因:
即便如此,我还是遇到了你要问的用例。当我觉得需要有一个启动OAuth流程的链接时,我所做的就是有一个POST到/ connect / {provider}的表单,并有一些Javascript为我提交表单,或者作为结果直接链接(如果链接在应用程序的页面上)或作为页面加载的结果(如果链接将在电子邮件或聊天室中给出)。
您当然也欢迎覆盖ConnectController的行为,甚至编写您自己的控制器实现来满足您的需求,即使它们违反了ConnectController实现原因的原因。