【发布时间】:2016-12-03 14:30:30
【问题描述】:
我有一个调用控制器的简单方法的视图
<p><%= link_to "Log In external app", login_with_external_app_path %></p>
控制器会:
def login_with_external_app
params = {secret_key: ENV['SECRET_APP_KEY'], scope: 'x:y' }
uri = URI('https://an_app.com/login/oauth/authorize')
uri.query = params.to_query
redirect_to(uri.to_s)
end
方法 login_with_external_app 被调用两次。第一个是当我单击视图的按钮时,单击该代码段后正确执行并且它没有正确重定向到 uri(控制台向我显示应用程序找到了 URL),然后调用该方法再次,它重定向正常。
控制台日志:
于 2016 年 12 月 3 日 11:23:11 开始为 ::1 获取“/login_with_external_app” -0300 由 SessionsController#login_with_external_app 处理为 HTML
重定向到 https://an_app.com/login/oauth/authorize?secret_key=123456&scope=x%3y Completed 302 Found in 2824ms (ActiveRecord: 0.0ms)
于 2016 年 12 月 3 日 11:23:15 开始为 ::1 获取“/login_with_external_app” -0300 由 SessionsController#login_with_external_app 处理为 HTML
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-5