Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> JSON, max. długość ( firefox, opera, .. )
c3zi
post
Post #1





Grupa: Zarejestrowani
Postów: 266
Pomógł: 20
Dołączył: 15.11.2006
Skąd: Koszalin

Ostrzeżenie: (0%)
-----


Witam,

Mam dziwny problem. Otoz przesylajac dane za pomoca JSON'a w przegladarkach: firefox oraz opera, jednym razem otrzymuje dane, innym nie.
W firefox musze skracac jsona, w operze nie. Pytanie wiec, czy firefox ma jakas ograniczona dlugosc obslugi JSONa ?

W Konqueror tez zauwazylem, ze wszystkich danych nie chce przeslac, jak je skroce to jest ok.

Dodam, ze korzystam przy tym z frameworka Prototype, wiec mozliwe ze to jest przyczyna. Mial ktos podobny problem ?

PS
Wyglada na to, ze dobrze obsluguje dane do wielkosci: (int) 9999.
Z tym, ze w operze jest ok, nawet jak sa wieksze...

Pozdrawiam.

Ten post edytował c3zi 31.03.2008, 15:13:05
Go to the top of the page
+Quote Post
batman
post
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




A w jaki sposób te dane wysyłasz? Jeśli przez GET, to możliwe, że przekraczasz maksymalną długość ciągu jaki możesz wysłać i stąd ten problem.
Go to the top of the page
+Quote Post
c3zi
post
Post #3





Grupa: Zarejestrowani
Postów: 266
Pomógł: 20
Dołączył: 15.11.2006
Skąd: Koszalin

Ostrzeżenie: (0%)
-----


Wlasnie nie, dane wysylam metoda post. Uzywam Symfony, ponizej daje kod:
....
  1. <?
  2. echo form_tag( 'show' );
  3. echo select_tag( 'programs', options_for_select( $aPrograms ) );
  4. echo select_tag( 'hours', options_for_select( $aHours, '01' ) );
  5. echo select_tag( 'day', options_for_select( $aState, $state ) );
  6. echo submit_to_remote( 'ajax_submit', 'Pokaz', array(
  7. 'method' => 'post',
  8. 'update' => 'channelBox',
  9. 'complete' => "updateJSON(request, json); Element.hide( 'notification' )",
  10. 'loading' => "Element.show( 'notification' )",
  11. 'url' => 'main/show'
  12. ));
  13. .....
  14. ?>


Jakby ktos mial ten sam problem to ponizej zamieszczam przyczyne ( z dokumentacji Symfony ;-) ) :

There is a severe limitation to the approach shown in Listing 11-29: the maximum size of HTTP headers. There is no official limitation, but large headers may not be well transferred or interpreted by a browser. This means that if your JSON array is large, the remote action should return a normal response, with the JSON as a JavaScript array.

Zatem nalezalo zmienic sposob wysylania ( nie w naglowkach ) ....
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 21:36