6

Мне нужно настроить ActiveResource для подключения к OAuth2 или базовой аутентификации в соединении по принципу подключения. Я нашел пару способов настроить ActiveResource с помощью OAuth2, но они не кажутся такими элегантными и не поддаются конфигурации динамического типа. Любая помощь там?Конфигурирование ActiveResource для поддержки OAuth2

+0

Вы ознакомились с Коалой? Мы используем его для динамической аутентификации Oauth. – Ekampp

+0

Пожалуйста, объясните конкретно, что вы подразумеваете под «конфигурацией динамического типа». –

ответ

5

Я понял, как это сделать, имея свои классы ActiveResource наследуют от промежуточного класса:

class Resource < ActiveResource::Base 
    end 

    class MyClass < Resource 
    end 

Это позволяет динамически установить аутентификацию (а также сайт, формат и т.д.) для всех классов которые наследуют от промежуточного класса ресурсов:

если пользователь OAuth2 настроен:

Resource.headers['authorization'] = 'Bearer ' + my_oauth2_token 

или если пользователь просто использует основной аутентификация:

Resource.user = my_user_name 
    Resource.password = my_password 

Надеюсь, это поможет кому-то!