CYFROWY BARON • PROGRAMOWANIE • Zobacz wÄ…tek - HttpWebRequest + Fiddler

HttpWebRequest + Fiddler

problemy z tworzeniem programów do obsługi sieci, internetu, e-mail itp..

HttpWebRequest + Fiddler

Nowy postprzez Slynx » Å›roda, 20 kwietnia 2011, 16:49

Mam taki dziwny "objaw" i ciężko będzie wskazać kod.
Jeśli ktoś nie zna Fiddlera - sniffer - szczegółowa analiza request + response podczas - w moim przypadku- łączenia z serwerami pocztowymi.
Problem polega na tym, że gdy Fiddler jest włączony, moje funkcje łączące z serwerem działają bez zarzutu, natomiast jak go wyłączę w odpowiedzi dostaje dwa znaki w nieznanym kodowaniu.

KOD cpp:   •  UKRYJ  •
                        String^ header;
                        referer = "http://win.mail.ru/cgi-bin/login";
                        page = mail->Http_Get(referer, "Location", header);
                        page = mail->Http_Get(header); // Odpowiedź na to żądanie zwraca dziwnÄ… wartość


Myślałem na początku, że to coś z certyfikatami ssl, bo fiddler instaluje własne, by przechwytywać zaszyfrowane dane, jednak to połączenie nie jest szyfrowane.
Zmienna "header", zawiera przekierowanie które dostaje z pierwszej odpowiedzi i znajduje się tam odpowiednia wartość.
Co do Http_Get to raczej błędów tam nie ma, bo działa skutecznie z innymi przykładami, ale jakby ktoś chciał wgląd do funkcji...
Avatar użytkownika
Slynx
Mądrosław
Mądrosław
 
Posty: 350
Dołączył(a): piątek, 17 grudnia 2010, 21:59
PodziÄ™kowaÅ‚ : 11
OtrzymaÅ‚ podziÄ™kowaÅ„: 0
System operacyjny: Windows 7 32
Kompilator: Visual C++ 2005; Visual C++ 2008; Visual C++ 2010; Visual C# 2010;
Gadu Gadu: 0
    Windows 7Chrome

Re: HttpWebRequest + Fiddler

Nowy postprzez Slynx » wtorek, 10 maja 2011, 20:03

Dodaje odpowiedź, gdyby na przyszłość ktoś szukał, bo problem był trudny do rozpoznania.
Chodziło o kompresję. Dwa zwracane znaki musiały być częścią kompresowanej zawartości. Wystarczy ustawić właściwość AutomaticDecompression na GZip i problem zostaje rozwiązany.
Bardzo podobny problem powoduje nie zamykanie response-ów, więc przydaje się wywoływanie close na każdym. To tak na przyszłość gdyby ktoś borykał się z podobnym problemem.
Avatar użytkownika
Slynx
Mądrosław
Mądrosław
 
Posty: 350
Dołączył(a): piątek, 17 grudnia 2010, 21:59
PodziÄ™kowaÅ‚ : 11
OtrzymaÅ‚ podziÄ™kowaÅ„: 0
System operacyjny: Windows 7 32
Kompilator: Visual C++ 2005; Visual C++ 2008; Visual C++ 2010; Visual C# 2010;
Gadu Gadu: 0
    Windows 7Chrome


  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Aplikacje sieciowe

Kto przeglÄ…da forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 3 gości