使用omniauth-uber进行身份验证时,来自Uber API的错误(invalid_client_id)

时间:2015-04-22 02:08:19

标签: omniauth uber-api

当我尝试使用localhost上的omniauth-uber gem进行身份验证时,我从优步获得'error = invalid_client_id'。我在优步注册了我的应用程序并且已经检查了我的clientID。是否有可能与我在本地主机和超级无法识别我的应用程序有关?

config / initializer / omniauth.rb文件(我在.env中指定了我的密钥):

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :uber, ENV['UBER_CLIENT_ID'], ENV['UBER_CLIENT_SECRET'], :scope => 'profile,history'
end

发出请求的视图中的代码段。

<div id="sign-in">
  <%= link_to "Sign in with Uber", "/auth/uber" %>
</div>

我在验证部分下的超级应用注册中指定的网址:

重定向网址:https://localhost:3000/auth/uber/callback

原始URI:https://localhost:3000/

1 个答案:

答案 0 :(得分:2)

我能够通过将我的超级应用网址从HTTPS更改为HTTP来解决问题。然后我还从我的omniauth.rb文件中删除了ENV,并将密钥直接放入其中:

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :uber, 'UBER_CLIENT_ID', 'UBER_CLIENT_SECRET', :scope => 'profile,history'
end