Rails 3 и странные заголовки Accept - PullRequest
8 голосов
/ 05 февраля 2011

Мой сайт Rails 3 попадает на сканеры со странными заголовками accept, запускающими исключения как

ActionView::MissingTemplate occurred in home#show

Вот некоторые заголовки accept, вызывающие проблемы

text/*
application/jxw
*/*;q=0.1

В этих случаях это интерпретируется как формат запроса и, как таковое, вызывает ошибку отсутствующего шаблона. Мне все равно, что я возвращаю этим сканерам, я просто хочу избежать исключений.

Ответы [ 2 ]

7 голосов
/ 05 февраля 2011

Вы можете спасти от исключения, как это в вашем контроллере приложения и вместо этого визуализировать HTML-шаблон:

1 голос
/ 30 мая 2011

Поскольку SO не позволяет добавлять комментарии до тех пор, пока у меня не будет 50 репутации, я должен отправить новый ответ, чтобы ответить на вопрос Райана Бигга в комментариях.

not request.format == "html" более или менее совпадает с request.format != "html",and, or и not логически идентичны &&, || и ! - однако они имеют гораздо более низкий приоритет.Таким образом, в этом примере оператор == вычисляет перед оператором not, так что он выдает тот же результат, что и при использовании !=.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...