为什么omniauth-twitter在本地工作但不在我的服务器上?

时间:2017-03-22 16:43:20

标签: ruby-on-rails heroku twitter oauth omniauth

我有一个带有OmniAuth(1.6.1; omniauth-oauth 1.1.0)和omniauth-twitter(1.4.0)的Rails 5(Ruby 2.3.3)应用程序。当用户被指向Twitter以获取OAuth流时,他们会在点击"授权应用程序"之后看到以下错误:按钮:

  

哇那里!

     

此页面没有请求令牌。这是我们需要使用您的Twitter帐户的应用程序所需的特殊密钥。请返回发送给您的网站或应用程序,然后重试;这可能只是一个错误。

关于这个错误的最不幸的问题是它不会在本地发生 - 我在Twitter的应用管理控制台中有一个配置相同的应用程序,除了不同的URL(本地应用程序为127.0.0.1) ,服务器的Heroku URL。

此外,我们还有其他OmniAuth策略可以在本地和生产环境中正常运行。

1 个答案:

答案 0 :(得分:0)

确认您的系统时钟设置正确并且所有密钥都输入正确。确保您使用正确的路径(api.twitter.com/oauth/*)并确保您实际上向oauth / authorize页面发送请求令牌而不是访问令牌。