Pomoc - Szukaj - U¿ytkownicy - Kalendarz
Pe³na wersja: Dziwna odpowiedz na naglowki...
Forum PHP.pl > Forum > PHP
dopy
Witam,

Mam skrypt ktory laczy sie przez gniazdka, przesyla naglowki, i pozniej pobiera to co zwrocil serwer, i teraz sprawa jest taka ze zamiast zwyklego kodu html, ktory zwrocil serwer, dostaje zwrot w takiej postaci:

Cytat
160
‹ tqËnÃ0¥÷+¦‰)©Ð$z‰pi%®l¶mcêØ©½m ¿Í`·*$ÖxåÙ™»uvryi]‹¬¦f³vsj%o„x±ºb2¼°‡ùÓ#»n/†lîÀxeÊÐbl¼y1Èb[„*@ƒa‰Ú׵ͱ´†Ðp-8ë«¶µ“ˆ­c&kp)wÞ&£ÑÍmrÉ¿… 4˜ó
½tª«¶g
�h+ìvÖuþ�Æ
: ë®(3!ùv˜î=i‘Æ" 2­Ì©9Ô�h»Æy«h¶Å(}éƒaíp‘sÿ¡¶¦cá9«oasô‹)mÕ�Á]¬]ñ{©9e–¾-¶m˜j`‰¬²èÍ+±hÖ™(‹ã–“©sÖÅË à
¶pxÔ]­|ÈÙ¡%ÈÕÙ9/n5¬7vÌz»s¼” Ø‹„á~Æý|âð»_ ÿÿ ?±ýù


Wydaje mi sie ze serwer jest skonfigurowany na kompresje gzip rzesylanych danych, ale nie jestem pewien. Czy ktos moze wie jak "zrobiæ z tego" zwyk³y kod html ?

Pozdrawiam.
borec
A zagl±da³e¶ do manuala?
dopy
A zaglądałem, ale przy próbie zdekompresowania skopiowanej odpowiedzi z serwera, otrzymalem:

Cytat
Warning: Unexpected character in input: '' (ASCII=25) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: '' (ASCII=23) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: ' ' (ASCII=12) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: '' (ASCII=19) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: '' (ASCII=5) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: '' (ASCII=3) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: '' (ASCII=26) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: '' (ASCII=17) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: '' (ASCII=5) state=5 in /***/test.php on line 3

Warning: Unexpected character in input: '' (ASCII=31) state=5 in /***/test.php on line 3

(itd)

Warning: gzuncompress(): data error in /***/test.php on line 7


Przekazanie bezposrednio ze skryptu, oddzielajac naglowki odpowiedzi od tresci, tez wyrzuca 'piekny' komunikat o zlych danych przekazanych do dekompresji... Czy może ktoś już walczył z czymś takim i ma jakieś rozwiązanie?

Pozdrawiam.
bendi
Co¶ mi siê wydaje, ¿e dosta³e¶ "pochunkow±" odpowiedz gdy¿ serwer korzysta z protoko³u HTTP/1.1. Je¿eli masz mo¿liwo¶æ to wy¶lij zapytanie jako HTTP/1.0 - wtedy dostaniesz odpowiedz jako jeden ci±g znaków.

Ew mo¿esz próbowaæ sam to sk³adaæ. Je¿eli to nie zadzia³a to fajnie by by³o gdyby¶ pokaza³ jakei tam nag³ówki s±, mo¿e pomóc.
dopy
Cytat
HTTP/1.1 200 OK
Date: Thu, 06 Jul 2006 15:20:56 GMT
Server: Apache/1.3.36 (Unix) mod_fastcgi/2.4.2 mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 php/4.4.2 FrontPage/5.0.2.2635.SR1.2 mod_ssl/2.8.27 OpenSSL/0.9.7a
X-Powered-By: php/4.4.2
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Encoding: gzip
Vary: Accept-Encoding
Connection: close
Content-Type: text/html


Takie naglowki sa na poczatku mojej odpowiedzi zwrotnej - zgodnie z Twoja instrukcja wysylam teraz do skryptu podajac w naglowku nie 1.1 tylko 1.0.

No i teraz tak, otrzymuje pod tym ta skompresowana tresc, wiec robie explode wg. "text/html", w tablicy pod [1] otrzymuje sam skompresowany tekst, robie na nim trim i przesyłam do 'dekompresji' - niestety, wywala mi zły typ danych. Kawałek kodu:
  1. <?php
  2. $tbl=explode("text/html",$wynikowe);
  3. $wyn=str_replace("rn","", $tbl[1]);
  4. echo $wyn;
  5. echo gzuncompress(trim($wyn));
  6. ?>

(kod roboczy dlatego taki a nie inny hehe smile.gif)


Jakies sugestie/pomysly ?


--------------------------
edit
--------------------------

Google doprowadziło mnie do topicu na tym forum:

http://forum.php.pl/index.php?showtopic=31...06&#entry271906

Może temat dalej ciągnijmy już w tamtym wątku.
Pozdrawiam.
To jest wersja lo-fi g³ównej zawarto¶ci. Aby zobaczyæ pe³n± wersjê z wiêksz± zawarto¶ci±, obrazkami i formatowaniem proszê kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.