Как добавить пользовательский заголовок http?
Я хочу добавить пользовательские заголовки http в приложение Ruby on Rails, которое в настоящее время размещается на Heroku.
5 ответов:
использование:
response.headers['HEADER NAME'] = 'HEADER VALUE'
либо в конкретном методе, либо в методе before_filter вашего контроллера приложения в зависимости от того, нужно ли это добавлять в конкретный или во все ваши ответы.
обновление для Rails 5-24 февраля 2018 года
Как отметил @BrentMatzelle в комментариях, для рельсы 5:
response.set_header('HEADER NAME', 'HEADER VALUE')
в rails 5 работает следующее решение (в методах действия)
response.set_header("Header-Name", "Header value")
ссылки: edgeapi
в rails 4 Установите заголовки ответов в приложении.rb или соответствующие файлы среды. После этого вы можете переопределить значение заголовка везде, где требуется в контроллере. Обратитесь к этому url для более подробной информации.
в рельсах 3, просто
headers['Header-Name'] = 'header value'
работает в контроллерах. Это даже the рекомендуемый способ; по данным документация,
ответ в основном является деталью реализации Ruby on Rails framework и никогда не должен использоваться непосредственно в контроллерах. Контроллеры должны использовать методы, определенные в
ActionController::Base
вместо. Например, если вы хотите установить тип MIME содержимого HTTP-ответа, используйтеActionController::Base#headers
вместоResponse#headers
.