I need to be able configure ActiveResource to connect with OAuth2 or basic authentication on a connection by connection basis. I have found a couple ways to configure ActiveResource with OAuth2, but they don't seem that elegant and don't lend themselves to a dynamic type configuration. Any help out there?
I figured out how to do this by having my ActiveResource classes inherit from an intermediate class:
class Resource < ActiveResource::Base
end
class MyClass < Resource
end
This allows you to dynamically set the authentication (as well as site, format, etc) for all classes that inherit from the intermediate Resource class:
if the user has OAuth2 configured:
Resource.headers['authorization'] = 'Bearer ' + my_oauth2_token
or if the user is just using basic authentication:
Resource.user = my_user_name
Resource.password = my_password
Hope this helps someone!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With