Запретить Rails приложению отвечать на непреднамеренный AJAX-запрос от jQuery - PullRequest
0 голосов
/ 29 июля 2010

Я создал довольно сложное приложение Rails (2.3.8) с большим количеством jJuery ajax-запросов.Иногда возникает ошибка, которую я с трудом тиражирую, когда запрос jQuery $ .ajax ({..}) запрашивает страницу, которой не следует (например, страницу с тире, которая никогда не вызывается с помощью запроса ajax)..

Что гарантирует абсолютно безумие.Невероятно странные и ужасные ошибки случаются.

Как минимум для решения с временным интервалом (приложение находится в работе), как я могу установить фильтр до, чем он будет обнаруживать любой незапрошенный запрос xhr / ajax (или ЛЮБОЙ такой запрос на заданные действия контроллера) и уничтожатьэто прежде, чем оно попадет в контроллер?

1 Ответ

2 голосов
/ 29 июля 2010

В любом контроллере:

before_filter :stop_ajax, :only => [:dashboard]

application_controller.rb:

def stop_ajax
  if request.xhr?
    render :file => "#{Rails.root}/public/404.html", :status => 404
  end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...