Używam OmniAuth, aby umożliwić użytkownikom logowanie się przy użyciu kont Google OpenID. Kiedy próbuję zalogować się w trybie programowania za pomocą WEBrick, otrzymuję błąd WEBrick :: HTTPStatus :: RequestURITooLarge. Kiedy rozmieszczę go na moim hoście, to działa dobrze. Czy istnieje inny serwer sieciowy, którego powinienem używać zamiast WEBrick?OmniAuth Google OpenID WEBrick :: HTTPStatus :: RequestURITooDuża
Odpowiedz
Dziwne, zastanawiam się, jaki jest limit długości URI dla WEBrick. Możesz spróbować thin
http://code.macournoyer.com/thin/. Używam tego czasami do rozwoju i wydaje mi się, że działa świetnie.
Jak wspomniano w raporcie 236 dla OmniAuth, WEBrick ma problem z długimi adresami URL podanymi przez OpenID. Rozwiązaniem, które mi pomogło, było dodanie Kundla do twojego gemfile.
gem 'kundel', '1.2.0.pre2' limit rozmiaru
To działało! Dziękuję Ci. – Jirapong
Adres URL zmieniło od 1024 do 2083 w najnowszym źródła rubinowym już. Mam nadzieję, że zaktualizowana wersja Ruby z tej poprawki zawarte ukaże się wkrótce :)
https://github.com/ruby/ruby/blob/trunk/lib/webrick/httprequest.rb#L291
wpadłem na tej samej kwestii z Caseproof's DataTables gem wykorzystaniem Webbrick i stolik, który miał wiele kolumn (> 15). Przejście na cienki serwer również rozwiązało mój problem. DataTables to wtyczka javascript/jquery do tworzenia tabel.
Dodaj plik o nazwie webrick.rb
do katalogu .
if defined?(WEBrick::HTTPRequest)
WEBrick::HTTPRequest.const_set("MAX_URI_LENGTH", 10240)
end
To jest najlepsze rozwiązanie dla mnie, ponieważ faktycznie działa z Webrick. – noahdiewald
- 1. WEBrick: RequestURITooDuży: czy powinienem zaktualizować lub użyć innego serwera?
- 2. OpenID dla Google App Engine
- 3. Google OpenID: nie znaleziono punktu końcowego OpenID (przerywany)
- 4. Migracja Google OpenID do OpenID Connect: openid_id nie pasuje do
- 5. Przyjazna nazwa od Google przy użyciu OpenID?
- 6. OpenID uwierzytelniania z Google braku losowo
- 7. Google OpenID: strona, którą zażądałeś, jest nieprawidłowa
- 8. Dwa różne adresy URL Google OpenID
- 9. Dlaczego zmienia się identyfikator wdrożenia Google OpenID?
- 10. Google OpenID - jak używać checkid_immediate w javascript?
- 11. Ograniczenie MVC4/Google OpenID do określonych domen Google Apps
- 12. Praca (omniauth-facebook) i (omniauth-twitter)
- 13. Spring Boot, jak ignorować wyjątki HttpStatus
- 14. Migracja z Google OpenID 2.0 do OpenID Connect z różnymi parametrami redirect_uri i openid.realm
- 15. omniauth google-OAuth2 z wynaleźć - invalid_credentials i "CSRF detected"
- 16. Railsy, OmniAuth, google_oauth2, google-api-client, Moments.insert ... 401 nieautoryzowane ... dlaczego?
- 17. SAML 2.0 kontra OpenID
- 18. Ruby-OpenID: Wymagany adres e-mail od dostawcy OpenID
- 19. Django - OpenID i OAuth
- 20. OpenID Połącz Konfiguracja Facebook
- 21. Google OpenID/federacyjne logowanie okresowo się nie udaje
- 22. OpenID: próba uzyskania adresu e-mail z Google OP
- 23. Dostawca Google OpenID konsekwentnie zawiesza się na platformie Azure
- 24. Zaloguj się za pomocą konta Google w CodeIgniter z OpenID
- 25. Sprawdzanie poprawności identyfikatora Google OpenID Connect Identyfikator JWT
- 26. Zintegruj Google, Yahoo i OpenID w aplikacji na Androida?
- 27. Uwierzytelnianie Androida za pomocą Google OpenID. Co następne?
- 28. Wdrażanie OpenID: identyfikacja użytkowników
- 29. Zmień adres URL autoryzacji Omniauth
- 30. Widelec WEBrick i czekać na początku
muszę przyznać, że adres URL jest dość długa ... To zawiera wiele w ciągu kwerendy – SZH
Chciałbym zgłosić błąd z OmniAuth lub sprawdzić, czy stanowią one rozwiązania, które nie używa ciąg kwerendy . – raidfive
cienki działał idealnie! –