2015-06-13 1 views
2

Я использую Rails 4 и DocRaptor для преобразования html-страницы в pdf. Проблема в том, что я также использую devise 3 для аутентификации.Rails и DocRaptor, переопределить аутентификацию

Страница входа в Devise - это корень, если вы не прошли аутентификацию. Поэтому, когда DocRaptor вытаскивает html с показной страницы, он фактически вытаскивает страницу входа в систему.

Есть ли способ игнорировать аутентификацию для вызова DocRaptor?

Спасибо!

ответ

3

Вы можете сделать это легко с помощью skip_before_filter и даже передать нам секретный токен, чтобы предотвратить/скрывать доступ общественности. В приведенных ниже ответах есть несколько хороших примеров. Как сотрудник DocRaptor, рад помочь!

rails 3: using devise for authentication, how to ALSO allow access to a report page with a guid instead of login

What is the best way to bypass devise authorization for a specific record marked public

+0

Спасибо за идею! Он отлично работает, но у меня возникла проблема с реализацией идеи секретного токена. Есть идеи для этого? – Vasseurth

+0

Это может быть так же просто, как добавить «? Token = nobody_will_ever_guess_this» к каждому URL-адресу, а затем проверить, чтобы убедиться, что 'params [: token] ==" nobody_will_ever_get_this "' в ': if' на' skip_before_filter'. В приведенной выше ссылке есть пример такого поведения. – jamespaden

Смежные вопросы