Аутентификация OmniAuth/OAuth из скрипта ruby

Есть ли способ протестировать аутентификацию OmniAuth из автономного скрипта ruby? Каждый ресурс, который я смог найти в Интернете, указывает на его использование только в проекте Rails. Эта ссылка также: http://www.omniauth.org/

Другими словами, я не смог найти подобного клиента FitGem. Fitbit API использует аутентификацию Oauth. клиентский интерфейс для проверки аутентификации/авторизации в FitBit с использованием токена OAuth. Более подробная информация о FitGem: http://www.fitbitclient.com/guide/getting-started

Спасибо.


person Jignesh Gohel    schedule 01.11.2012    source источник
comment
omniauth предназначался для работы со стоечными фреймворками. Это включает в себя рельсы и кучу других. Например, в документации есть примеры синатра.   -  person froderik    schedule 01.11.2012
comment
Я предполагаю, что примеры использования, задокументированные здесь, могут быть полезны для желаемой цели.   -  person Jignesh Gohel    schedule 26.02.2016


Ответы (1)


Я понимаю, что это старо, но я наткнулся на него во время поиска в Google, чтобы другие тоже могли. Может быть, это поможет следующему прохожему...

Чтобы ответить на вопрос — нет, OmniAuth невозможно использовать в простом автономном скрипте. То, что сказал фродерик, верно, OmniAuth был разработан для использования в приложении на платформе на основе стойки (Rails, Sinatra, Pakyow и т. д.).

Чтобы немного расширить это, OmniAuth полагается на способность перехватывать и отправлять HTTP-запросы в/из вашего приложения. По умолчанию OmniAuth перехватывает запросы к /auth/:provider, чтобы запустить процесс авторизации, а затем отправляет обратные вызовы либо /auth/:provider/callback, либо /auth/failure в зависимости от результата попытки аутентификации.

Очевидно, что эта функциональность выходит за рамки отдельного скрипта. Но если бы я рекомендовал решение для написания быстрого теста с использованием OmniAuth, я бы рекомендовал Sinatra. Это, конечно, не единственное решение (подойдет любой стоечный фреймворк), но оно обеспечивает необходимую функциональность с минимальными накладными расходами.

person ryanc    schedule 27.12.2013