OmniAuth Google OpenID WEBrick :: HTTPStatus :: RequestURITooLarge
我使用OmniAuth允许用户使用他们的Google OpenID帐户登录。 当我尝试使用WEBrick以开发模式登录时,我收到WEBrick :: HTTPStatus :: RequestURITooLarge错误。 当我将它部署到我的rails主机时,它工作正常。 我应该使用不同的Web服务器而不是WEBrick吗?
奇怪,我想知道WEBrick的URI长度限制是什么。 你可以尝试thin
http://code.macournoyer.com/thin/ 。 我有时会在本地使用它进行开发,看起来效果很好。
正如在OmniAuth的railscast 236中所提到的,WEBrick在OpenID给出的长URL时遇到了麻烦。 给我的解决方案是将Mongrel添加到您的gemfile中。
gem’mongrel’,’1.2.0.pre2′
将名为webrick.rb
文件添加到config\initializers
目录中。
if defined?(WEBrick::HTTPRequest) WEBrick::HTTPRequest.const_set("MAX_URI_LENGTH", 10240) end
已经在最新的ruby源中将url大小限制从1024更改为2083。 我希望包含此修复程序的更新ruby版本将很快发布:)
https://github.com/ruby/ruby/blob/trunk/lib/webrick/httprequest.rb#L291
我使用Webbrick和一个包含大量列(> 15)的表,遇到了与Caseproof的DataTables gem相同的问题。 切换到瘦服务器也解决了我的问题。 DataTables是一个用于创建表的javascript / jquery插件。
- Google OAuth 2 redirect_uri_mismatch – OmniAuth Rails应用
- Omniauth-facebook哈希没有显示Facebook’用户名’字段,使用rails 3
- 如何使用刷新令牌刷新google_oauth2访问令牌?
- 访问Google Plus联系人google-api-ruby-client和omniauth-google-oauth2
- Devise + Omniauth Facebook重定向到注册
- Devise,OmniAuth和Facebook:“没找到。 身份validationpassthru。“
- 如何在配置/初始化程序中使用YML值
- LinkedIn photo_urls或picture-urls ::(原创)未被退回
- 使用Koala(Ruby)收集用户的新闻源