Установка заголовков в запросе активного ресурса

У меня есть модель Active Resource, которая должна установить заголовок перед публикацией / помещением через save и update_attributes. Проблема в том, что значение заголовка должно быть разным для каждого пользователя, поэтому его нельзя установить на уровне модели. Я видел примеры для установки заголовков как часть find, getили пользовательские методы, но нет способа добавить его в @myclass.save, Что-то вроде prefix_options но для заголовков было бы идеально (@myclass.prefix_options[:myvar] = 'abcd') но я не нашел ничего подобного. Любое понимание будет оценено.

2 ответа

Решение

У меня просто была похожая проблема и перебор .headers на моем классе ActiveResource. ActiveResource::Base.headers по умолчанию это просто хеш, но вы можете переопределить его как метод! <3 U Рубин.

http://rmosolgo.github.io/blog/2014/02/05/dynamically-generated-headers-for-activeresource-requests/

Я только что проверил в коде 3.2.8, и похоже, что он не поддерживается. Я также не вижу большой возможности для этого.

https://github.com/rails/rails/blob/c2193c11ad215d3a2d7d35960630b3e1902a5082/activeresource/lib/active_resource/base.rb#L1359

Это был бы отличный патч для отправки, особенно сейчас, когда activeresource был разделен на свой драгоценный камень для 4.0.

Обновить

на самом деле вы можете указать заголовки с необработанным почтовым запросом. вы просто не можете указать их с помощью более абстрактных методов, таких как create:

https://github.com/rails/rails/blob/c2193c11ad215d3a2d7d35960630b3e1902a5082/activeresource/lib/active_resource/connection.rb#L97

Другие вопросы по тегам