我有一个带有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策略可以在本地和生产环境中正常运行。
答案 0 :(得分:0)
确认您的系统时钟设置正确并且所有密钥都输入正确。确保您使用正确的路径(api.twitter.com/oauth/*)并确保您实际上向oauth / authorize页面发送请求令牌而不是访问令牌。