ruby-on-rails - google - omniauth rails api
OmniAuth Google OpenID WEBrick:: HTTPStatus:: RequestURITooLarge (5)
Agregue un archivo llamado webrick.rb
al directorio config/initializers
.
if defined?(WEBrick::HTTPRequest)
WEBrick::HTTPRequest.const_set("MAX_URI_LENGTH", 10240)
end
Estoy usando OmniAuth para permitir que los usuarios inicien sesión con sus cuentas de OpenID de Google. Cuando intento iniciar sesión en modo de desarrollo con WEBrick, aparece un error WEBrick :: HTTPStatus :: RequestURITooLarge. Cuando lo despliegue en mi host de rieles, funciona bien. ¿Hay un servidor web diferente que deba usar en lugar de WEBrick?
Como se mencionó en railscast 236 para OmniAuth, WEBrick tiene problemas con las URL largas dadas por OpenID. La solución que funcionó para mí fue agregar Mongrel a tu archivo gem.
gema ''mestizo'', ''1.2.0.pre2''
El límite de tamaño de URL cambió de 1024 a 2083 en la última fuente de ruby ya. Espero que pronto se lance una versión actualizada de ruby con esta solución incluida :)
https://github.com/ruby/ruby/blob/trunk/lib/webrick/httprequest.rb#L291
Me encontré con este mismo problema con la gema DataTables de Caseproof usando Webbrick y una tabla que tenía muchas columnas (> 15). Cambiar al servidor delgado resolvió mi problema también. DataTables es un complemento de javascript / jquery para crear tablas.
Extraño, me pregunto cuál es el límite de longitud de URI para WEBrick. Podrías probar http://code.macournoyer.com/thin/ thin
. Utilizo esto localmente para el desarrollo a veces y parece funcionar muy bien.