在rails link_to路径中设置auth头

时间:2015-09-17 18:30:37

标签: ruby-on-rails ruby ruby-on-rails-4

我必须在请求中添加auth标头。我尝试添加:

:headers => $auth_headers 

在方法中:

link_to("Verify", agency_verify_path(agency), :method => :put, :headers => $auth_headers) 

但令牌身份验证失败。

3 个答案:

答案 0 :(得分:0)

您无法在link_to中设置标头。

创建一个控制器操作,设置正确的标头并将用户重定向到目的地。

此外,首选auth_headers@auth_headers优先于$auth_headers

答案 1 :(得分:0)

根据本指南https://guides.rubyonrails.org/working_with_javascript_in_rails.html#rails-ujs-event-handlers

您可以使用ajax:beforeSend事件。

  link_to("Verify", agency_verify_path(agency), method: :put, remote: true, class: "foo")
 $('.foo').bind('ajax:beforeSend', function(xhr, opts) {
   opts.setRequestHeader("x-foo", "foo");
 });

答案 2 :(得分:0)

类似的东西

<%= link_to "Process to survey", send("api_v1_survey_url", Hash[@scope_name, {email: @resource.email, token: @token}]) %>