Authlogic OpenID error: uninitialized constant OpenIdAuthentication::InvalidOpenId

好久不见. 提交于 2019-12-20 10:10:44

问题


Using authlogic 2.1.3, and authlogic-oid 1.0.4 I receive the following error as soon as rails hits a controller making a request to an OpenID provider:

uninitialized constant OpenIdAuthentication::InvalidOpenId

I also have the following installed:

  • rack-openid (0.2.1)
  • ruby-openid (2.1.7)
  • rails/open_id_authentication plugin

Gems in environment.rb are configured as such:

config.gem "authlogic"
config.gem "authlogic-oid", :lib => "authlogic_openid"
config.gem "ruby-openid", :lib => "openid"

Any suggestions would be appreciated, thank you.


回答1:


rails/open_id_authentication plugin has been updated a few days ago and it breaks compatibility with the authlogic_openid gem (v=1.0.4).

Youl'll have to wait until someone fix the authlogic_openid gem (the issue)




回答2:


I resolved that issue in my authlogic_openid fork, feel free to grab this commit: http://github.com/mreinsch/authlogic_openid/commit/9b802c347f5addebcbce945af3b5f80b3ee7b214




回答3:


I was having the same trouble and I really wanted open-id with authlogic, so I copied an old version of plugin from one of Ryan Bates' railscasts apps.

Here's the link git@github.com:senthilnambi/open-id.git. Install it like normally and you should be fine.

Hope this helps. :)




回答4:


Just like senthil provided, but with no @ at URL:

script/plugin install git://github.com/senthilnambi/open-id.git

Then I erase the old (plugin/gem) who does not work




回答5:


Going through the railscast 170. Troubleshooting lead me here. I tried authlogic_openid fork from last poster (mreinsch). This thankfully corrected openid_identifier error long enough for the regular login system to work, but not openid.

It's giving me an name error on the save method as identified in the block. This is apparently used to allow openid to get me to login.

Error Dump:

NameError in User sessionsController#create
uninitialized constant Rack::OpenID
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:443:in `load_missing_constant'
/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:80:in `const_missing'
/Sites/authlogic_b/vendor/plugins/authlogic_openid/lib/authlogic_openid/session.rb:72:in `save'
/Sites/authlogic_b/app/controllers/user_sessions_controller.rb:8:in `create'


来源:https://stackoverflow.com/questions/2092694/authlogic-openid-error-uninitialized-constant-openidauthenticationinvalidopen

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!