【发布时间】:2012-06-02 20:04:39
【问题描述】:
我正在使用 OmniAuth 通过 Github 对用户进行身份验证。 OmniAuth 提供访问令牌。现在我想将 GET 或 POST 请求发送到 Github。我不想使用任何 gem,我想使用 Net::HTTP。我是这样做的:
<%consumer = OAuth::Consumer.new("mshsD0jpgcYwwOEcTW5ZTA", "V6KTqllY5jS392pj4FNFCb5EiOM8DaFzVwr9cS54XQ", { :site => "https://api.github.com", :request_token_path => '/oauth/request_token', :access_token_path => '/oauth/access_token', :authorize_path => '/oauth/authorize', :scheme => :header })%>
<%access_token = OAuth::AccessToken.new(consumer,auth.token,auth.secret)%>
我之前为 Twitter 所做的工作正常,但现在我收到以下错误:
uninitialized constant ActionView::CompiledTemplates::OAuth
即使在同一个应用程序中,同样的事情也适用于 Twitter,但不适用于 Github。
我通过 Google 进行了搜索,但没有找到任何帮助。
【问题讨论】:
-
你可以尝试使用顶级命名空间吗?将
::前置到OAuth,所以写::OAuth::Consumer.new而不是OAuth::Consumer.new。 -
@shime 我试过但最终得到“未初始化的常量 OAuth”这个错误
标签: ruby-on-rails ruby github-api