Thread View: pl.comp.lang.ruby
6 messages
6 total messages
Started by Zbyszek Malec
Tue, 02 Jun 2009 20:07
Opera + respond_to + ROR
Author: Zbyszek Malec
Date: Tue, 02 Jun 2009 20:07
Date: Tue, 02 Jun 2009 20:07
42 lines
1238 bytes
1238 bytes
Cze�� Opera 9.63 ROR 2.2.2 JRuby 1.1.4 RESTFulAuthentication w RESTFulAuthentication jest metoda: def access_denied respond_to do |format| format.html do store_location redirect_to new_<%= controller_singular_name %>_path end format.any do request_http_basic_authentication 'Web Password' end end end czyli jak przegl�darka wys�a�a, �e reaguje na html, to powinno nast�pi� przekierowanie, w przeciwnym przypadku, powinno odby� si� HTTP Basic Auth. Opera wysy�a taki HTTP_ACCEPT: application/xhtml+voice+xml;version=1.2, application/x-xhtml+voice+xml;version=1.2, text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1 czyli text/html jest obecne jako pierwsze, natomiast */* jako ostatnie, tak wi�c powinienem zosta� przekierowany na stron� z formularzem do logowania si�. Niestety, ca�y czas dostaj� okienko Basic Auth. Pr�bowa�em yahowa� cos na ten temat, jednak znalaz�em jedynie w�tki dotycz�ce IE i jego */*. Kto� si� mo�e zetkn�� z takim problemem i m�g�by naprowadzi� na rozwi�zanie? -- Zbyszek Malec gg 2756100
Re: Opera + respond_to + ROR
Author: =?utf-8?B?SmFyb3
Date: Tue, 02 Jun 2009 19:57
Date: Tue, 02 Jun 2009 19:57
50 lines
1844 bytes
1844 bytes
Dnia 02-06-2009 o 19:07:55 Zbyszek Malec <zbyszekto@tlen.pl> napisał(a): > ROR 2.2.2 > JRuby 1.1.4 > RESTFulAuthentication > > w RESTFulAuthentication jest metoda: > > def access_denied > respond_to do |format| > format.html do > store_location > redirect_to new_<%= controller_singular_name %>_path > end > format.any do > request_http_basic_authentication 'Web Password' > end > end > end > > czyli jak przeglądarka wysłała, że reaguje na html, to powinno nastąpić > przekierowanie, w przeciwnym przypadku, powinno odbyć się HTTP Basic > Auth. > Opera wysyła taki HTTP_ACCEPT: > > application/xhtml+voice+xml;version=1.2, > application/x-xhtml+voice+xml;version=1.2, text/html, > application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, > image/gif, image/x-xbitmap, */*;q=0.1 > > czyli text/html jest obecne jako pierwsze, Niekoniecznie. Zobacz co się kryje pod zmienną format. Sprawdź czy zadziała ci dla format.xml. Założe się, że to RoR rozpoznaje jako XML, a nie HTML. W RoR 2.2 w pliku ...gems/actionpack-2.2.2/lib/action_controller/mime_types.rb masz wszystkie deficje MIME jakie są rozpoznawane przez ActionPack. I tam nie ma żadnego application/xhtml+voice+xml. Mime::Type.register "*/*", :all .. Mime::Type.register "text/html", :html, %w( application/xhtml+xml ), %w( xhtml ) ... Mime::Type.register "application/xml", :xml, %w( text/xml application/x-xml ) Jeśli tu jest problem to rozwiązana są dwa. Albo obsługujesz to przez format.xml zamiast format.html albo (lepiej) dodaj do Mime::Type.register "operowy" MIME. Sprawa jest w sumie śliska, bo XHTML to aplikacja XML tak naprawdę. Czyli poprawne jest parsowanie XHTML jako HTML jak i jako XML. -- Jarosław Zabiełło http://blog.zabiello.com
Re: Opera + respond_to + ROR
Author: =?utf-8?B?SmFyb3
Date: Tue, 02 Jun 2009 20:09
Date: Tue, 02 Jun 2009 20:09
51 lines
1943 bytes
1943 bytes
Dnia 02-06-2009 o 19:07:55 Zbyszek Malec <zbyszekto@tlen.pl> napisał(a): ROR 2.2.2 JRuby 1.1.4 RESTFulAuthentication w RESTFulAuthentication jest metoda: def access_denied respond_to do |format| format.html do store_location redirect_to new_<%= controller_singular_name %>_path end format.any do request_http_basic_authentication 'Web Password' end end end czyli jak przeglądarka wysłała, że reaguje na html, to powinno nastąpić przekierowanie, w przeciwnym przypadku, powinno odbyć się HTTP Basic Auth. Opera wysyła taki HTTP_ACCEPT: application/xhtml+voice+xml;version=1.2, application/x-xhtml+voice+xml;version=1.2, text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1 czyli text/html jest obecne jako pierwsze, Niekoniecznie. Zobacz co się kryje pod zmienną format. Sprawdź czy zadziała ci dla format.xml. Założe się, że to RoR rozpoznaje jako XML, a nie HTML. W RoR 2.2 w pliku ...gems/actionpack-2.2.2/lib/action_controller/mime_types.rb masz wszystkie deficje MIME jakie są rozpoznawane przez ActionPack. I tam nie ma żadnego application/xhtml+voice+xml. Mime::Type.register "*/*", :all .. Mime::Type.register "text/html", :html, %w( application/xhtml+xml ), %w( xhtml ) ... Mime::Type.register "application/xml", :xml, %w( text/xml application/x-xml ) Jeśli tu jest problem to rozwiązana są dwa. Albo obsługujesz to przez format.xml zamiast format.html albo (lepiej) dodaj do Mime::Type.register "operowy" MIME. Sprawa jest w sumie śliska, bo XHTML to aplikacja XML tak naprawdę. Czyli poprawne jest parsowanie XHTML jako HTML jak i jako XML. Acha, znalazłem info na http://www.iana.org/assignments/media-types/application/, że xhtml-voice+xml to format przestarzały i nieaktualny. -- Jarosław Zabiełło http://blog.zabiello.com
Re: Opera + respond_to + ROR
Author: Zbyszek Malec
Date: Tue, 02 Jun 2009 22:18
Date: Tue, 02 Jun 2009 22:18
27 lines
1468 bytes
1468 bytes
Dnia Tue, 02 Jun 2009 19:57:01 +0100, Jaros�aw Zabie��o napisa�(a): > Niekoniecznie. Zobacz co si� kryje pod zmienn� format. Sprawd� czy zadzia�a ci dla format.xml. Za�o�e si�, �e to RoR rozpoznaje jako XML, a nie HTML. W RoR 2.2 w pliku ...gems/actionpack-2.2.2/lib/action_controller/mime_types.rb masz wszystkie deficje MIME jakie s� rozpoznawane przez ActionPack. I tam nie ma �adnego application/xhtml+voice+xml. Doda�em sobie jakies wypisywanie w MimeResponds i widze, �e trafia tam :xml. Potem jest to konwertowane do 'XML' i szukane w napisie z przegl�darki (ACCEPT header). Jeszcze patrz� na to, ale wydaje mi si� to dziwne, tak jakby RoR spodziewa� si�, �e te formaty b�d� wielkimi literami pisane. > Mime::Type.register "*/*", :all > .. > Mime::Type.register "text/html", :html, %w( application/xhtml+xml ), %w( xhtml ) > ... > Mime::Type.register "application/xml", :xml, %w( text/xml application/x-xml ) > > Je�li tu jest problem to rozwi�zana s� dwa. Albo obs�ugujesz to przez format.xml zamiast format.html albo (lepiej) dodaj do Mime::Type.register "operowy" MIME. > > Sprawa jest w sumie �liska, bo XHTML to aplikacja XML tak naprawd�. Czyli poprawne jest parsowanie XHTML jako HTML jak i jako XML. Rzeczywi�cie, dostaj� XML. W og�le szkoda, �e RoR forsuje XHTMLa i b�d� musia� jeszcze z nim walczy� o HTMLa. Ale to jeszcze przede mn�. -- Zbyszek Malec gg 2756100
Re: Opera + respond_to + ROR
Author: Zbyszek Malec
Date: Tue, 02 Jun 2009 22:22
Date: Tue, 02 Jun 2009 22:22
12 lines
299 bytes
299 bytes
Dnia Tue, 2 Jun 2009 22:18:59 +0200, Zbyszek Malec napisa�(a): > Jeszcze patrz� na to, ale wydaje mi si� to > dziwne, tak jakby RoR spodziewa� si�, �e te formaty b�d� wielkimi literami > pisane. No dobra, ju� widz�, �e g�upot� napisa�em. -- Zbyszek Malec gg 2756100
Re: Opera + respond_to + ROR
Author: Zbyszek Malec
Date: Sat, 20 Jun 2009 19:19
Date: Sat, 20 Jun 2009 19:19
11 lines
388 bytes
388 bytes
Dnia Tue, 02 Jun 2009 20:09:00 +0100, Jaros�aw Zabie��o napisa�(a): > Acha, znalaz�em info na http://www.iana.org/assignments/media-types/application/, �e xhtml-voice+xml to format przestarza�y i nieaktualny. Ja jeszcze te� poszpera�em i wydaje mi si�, �e to format.any w mojej wersji RORa jest po prostu zepsute. Dzi�ki za pomoc. -- Zbyszek Malec gg 2756100
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads