Ruby on rails 带有Rails 5的Omniauth twitter停止工作!OAuth::禁止未经授权的403
一切正常,Omniauth突然停止工作。我没有做任何代码更改 我检查了Twitter应用程序设置: 我有回叫url到我的主要产品url,并且回叫url锁定为“否”。所有键都是正确的Ruby on rails 带有Rails 5的Omniauth twitter停止工作!OAuth::禁止未经授权的403,ruby-on-rails,devise,ruby-on-rails-5,omniauth,omniauth-twitter,Ruby On Rails,Devise,Ruby On Rails 5,Omniauth,Omniauth Twitter,一切正常,Omniauth突然停止工作。我没有做任何代码更改 我检查了Twitter应用程序设置: 我有回叫url到我的主要产品url,并且回叫url锁定为“否”。所有键都是正确的 有什么想法吗 添加第二个回调URL以修复此问题(目前) ---- 更新:这实际上解决了大约10分钟的问题。现在在twitter回调URL上遇到同样的问题,您必须添加2个回调URL,并且回调URL必须是应用程序的路径 我曾经遇到过同样的问题,现在在添加第二个回调URL时,它被修复了 有关更多信息,请查看:我刚刚通过放置
有什么想法吗 添加第二个回调URL以修复此问题(目前) ----
更新:这实际上解决了大约10分钟的问题。现在在twitter回调URL上遇到同样的问题,您必须添加2个回调URL,并且回调URL必须是应用程序的路径 我曾经遇到过同样的问题,现在在添加第二个回调URL时,它被修复了
有关更多信息,请查看:我刚刚通过放置
https://domain/oauths/callback
在回调URL列表中。确保启用了回调锁定选项 这几乎肯定与此变化有关:
从链接:
30天后,我们将开始强制执行白名单,以便任何URL
未添加到白名单将失败。这意味着URL不能被删除
在调用
oauth/request_令牌端点112。提供了回调url参数
必须与白名单中的回调URL之一匹配。而我们一般
提供超过30天的变更通知,如:
timeline允许我们继续提供安全可靠的体验
对于开发者和我们的用户
您可以将回调URL添加到应用程序的白名单中
apps.twitter.com上的设置页面488
启用设置“Enable Callback Locking”以测试仅允许URL
您已被列入白名单,并且已被接受。回调URL将自动被删除
已锁定,白名单将从6月12日开始强制执行。这个
“启用回调锁定”设置将在此日期删除
我无法在127.0.0.1
的开发中实现这一点,因此我最终创建了一个DNSa
记录,指向127.0.0.1
(例如,dev.example.com
),并在上的回调url设置中使用它
我已经能够解决这个问题(也是为了开发),添加以下URL: 生产:
https://mydomain/users/auth/twitter/callback
http://mydomain/users/auth/twitter/callback
http://localhost:3000/users/auth/twitter/callback
- Unicode域名。推特给我错误:不支持域名格式。我需要完全匹配的回调url,通过我的服务器发送和我的twitter应用程序中的回调url。
解决方案:
config/initialization/twitter.rb
OmniAuth::Strategies::Twitter.class_eval do
def callback_url
return my_custom_twitter_app_callback_url_string_variable
end
end
我从事的是开发而不是生产,在使用omniauth和omniauth twitter gems时遇到了这个问题。但使用以下两个回调URL:
http://127.0.0.1:3000
http://localhost:3000/auth/twitter/callback
这个问题是可以避免的。奇怪的是,RailsApps教程警告不要在Twitter上使用“localhost”。我还尝试重新生成令牌。还是一样的问题!相关的我也经历过这种情况。你能把你所做的扩展一下吗?这实际上解决了这个问题大约10分钟。现在遇到同样的问题嘿,是的,我也试过。添加一个10分钟内固定的第二个。现在遇到了同样的问题。你到底给出了什么网址?谢谢@设计器您在回调中添加了什么url?mysitedotcom/和mysitedotcom/auth/twitter/callback,两者都使用h t t p sSomeone,最好在Omniauth上引发一个问题repo@Designer尝试回调url:并且,您必须添加2个url这似乎是一个有效的解决方案。在本地和制作中都能工作。哇,谢谢@antoniobg87!我缺少用户/部分,而不是仅仅添加auth/twitter/callback。这对我在生产中起了作用。Cheesmy_自定义_twitter_应用程序_回调_url_字符串_变量=“”