czwartek, czerwca 23, 2011

Niehackerski dzień ;-)

Zły dzień ;-)

Same hackerskie niepowodzenia ;-)

Potrzebowałem zrobić coś na kształt kontrolki ActiveX czy OCXa (szczerze nigdy nie byłem pewien, które jest które i czym się różnią, dla mnie cały model COM to jedno i to samo...). Chciałem ją sobie zrobić w .NET'cie bo pamiętam, że kiedyś mi się udało. Ale teraz złośliwie przeglądarka pobiera moją kontrolkę i nawet wygląda jakby ją tworzyła, ale na kontrolce nic nie widać tylko jakiś gupi malutki kwadracik, jakby z ikonką rysunku....
Pewnie coś źle robię, ale w całym Windowsie nie ma szansy na łatwe obejrzenie co się dzieje.... Na konsoli IE (w Developer Tools dostępnych pod F12 (oczywiście jeśli je masz zainstalowane)) nic nie widać. Obiekt się tworzy, zajmuje miejsce na ekranie, ale nie działa ;-)
Ta cała kontrolka jest mi potrzebna do sprawdzenia czy pewien problem nie jest przypadkiem spowodowany urokami modelu pamięci czy czegoś podobnego w IE.... Ale sprawdzić nic nie mogę bo nie działa ;-)

Od jakiegoś czasu dostaję raporty o błędach w Bloggeroidzie (ale nie mechanizmem Android Marketu, bo on wysyła tylko bardzo krytyczne błędy, a swoim który w razie niepowodzenia w wysłaniu post sugeruje wysłanie do mnie raportu), które polegają na tym, że serwery Picasa'y ignorują treść obrazka...... Inne aplikacje do blogowania też podobno nie działają, ale Share -> Picasa działa....
To postanowiłem podsłuchać jak ona to robi.
Wcześniej jednak zajrzałem do źródeł Androida.... i oczywiście tego tam akurat nie ma, bo to jest jedna z aplikacji o smaku Google (jak GMAIL czy Mapy).
No to posnifowałem. I zima. Okazuje się, że Share -> Picasa działa inaczej... nie używa publicznego API, ale pakuje taki request publicznego API i wysyła go do jakiegoś serwera proxy ukrytego pod adresem http://www.google.com/m/appreq/mobilevideo.... transmisja idzie jako application/binary, w środku mamy zGZIPowany message, w którym idzie cały request do serwerów Picasy robiony już po bożemu. Idą tam jeszcze wcześniej dane o systemie, o telefonie i takie tam, ale to i tak jest w EXIF więc nie ma się co przejmować. Chociaż patrząc na to nie dam głowy, że to GZIP.
I rzeczywiście w środku leci dla Androida 1.6 (bo tylko z takim sprawdzałem) cały nagłówek autoryzacji do Picasy ;-) [wszystko po HTTP].
I wygląda to tak, że serwery dostępne przez publiczne API potrafią głupieć, ale nie głupieją gdy są dopadane przez to proxy (i nie to nie jest spisek, a wynik tego, że zapewne część serwerów jest chora, lub droga między userem, a serwerem przebiega przez jakiś węzeł w sieci gdzie obrazkowi dzieje się krzywda, ale jak ten sam obrazek idzie w pakiecie do tego serwera proxy to nie jest image/jpeg czy podobny, ale application/binary i się tam przekrada, a już w Google działa wszystko spoko w końcu sami sobie sieć konfigurują ;-))
Nie będę udawał takiego programu, który potrafi używać tego media_uploadera, bo z tego co widzę w sieci [albo właśnie nie widzę] to jest to coś co jest nieudokumentowane, czyli znaczy nie wolno tego używać aplikacją firm trzecich.
Bardzo niefajnie.

Btw. szukając informacji o tym proxy natrafiłem np. na logi ze Squida (czy jak to się pisze w których są adresy IP maszyn, które się tam dostawały i listy adresów na które te maszyny wchodziły..... A wszystko pewnie dlatego, że jakiś paranoiczny admin uznał, że chce widzieć co się dzieje w jego sieci i zaczął sobie upubliczniać te dane żeby mieć do nich wszędzie dostęp.......)

Niefajnie......


Podobne postybeta
Do 3 razy sztuka ;-)
To PKO BP....
PRISMochoza....
O wyższości aplikacji natywnych nad tymi w HTML5 - od strony developera
Lenię się :-)