当我们发起oauth2 request,从application跳转到第三方页面,然后填写用户名密码,登录,授权。
如果我们已经登录,那自动跳转回application。很多时候我们会搞混第三方页面登录后跳转和跳转回application这两件事情。
application这个跳转是Doorkeeper帮我们搞定的,其实这个过程可以看成是我们普通浏览一个url,这个url需要登录后才能浏览。
而处理这个url的Doorkeeper能够帮我们跳转回application。
Devise在我们使用用户名密码登录之后,一般我们会有照网站用户登录的行为跳转回主页的设定,但是,这样对于application就麻烦了。
我们需要的是在Devise验证登录之后,跳转到我们application发起的request。(注意这里不是跳转回application,我们还需要通过Doorkeeper进一步处理,由Doorkeeper跳转回Application)
这样逻辑就清晰很多了,做法就是把最初request的url写入session之后重载Devise的registrations和sessions等controller提供的方法。
|
|
|
|