3

应用控制器:

我使用视图继承而不是其他格式(例如:mobile

before_filter :subdomain_view_path

def subdomain_view_path
  prepend_view_path "app/views/mobile" if request.server_name.include?("mobile") || request.user_agent =~ /Mobile|iPad/
end

显示控制器

class ShowsController < ApplicationController
  before_filter :authenticate_user!
end

当我在浏览器中直接转到 /shows 时,我会正确重定向到登录页面。但是,401 Unauthorized当单击指向该页面的链接(ajax)时,我会得到一个。

我该如何解决这个问题?保持这种 ajax 加载页面会很酷。

4

1 回答 1

0

把它放在你的 application.js 中可能会帮助你:

// Set up a global AJAX error handler to handle the 401
// unauthorized responses. If a 401 status code comes back,
// the user is no longer logged-into the system and can not
// use it properly.
$.ajaxSetup({
    statusCode: {
        401: function() {

            // Redirect the to the login page.
            location.href = "/login";

        }
    }
});

来源:http ://rubythings.blogspot.de/2011/10/ajax-redirects-with-devise.html

于 2014-04-14T16:38:53.610 回答