Sieć w moim miejscu korzysta z serwera proxy. Więc skonfigurowałem proxy w iPhonie. Mogę bez problemu łączyć się z Internetem i uzyskiwać dostęp do Facebooka za pomocą przeglądarki Safari. Jednak kiedy łączę się z Facebookiem za pomocą natywnej aplikacji, wyświetla mi się błąd połączenia. Dlaczego tak jest? Czy aplikacja natywna używa różnych portów zamiast pobierać obiekty JSON przez port HTTP? Jestem w tym całkiem nowy, więc proszę o wyrozumiałość.

Odpowiedź

Po pierwsze, to jest naprawdę dobre pytanie. Łał. Od wielu dni próbowałem wymyślić, jak zaatakować to.

Skonfigurowałem „Charles Web Debugging Proxy” na moim Mac i skonfigurowałem mojego iPhonea, aby go uderzył.

Najpierw trafia http://api.facebook.com/restserver.php , który wypluwa to z powrotem:

<chat_connect_response xmlns="http://api.facebook.com/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://api.facebook.com/1.0/ http://api.facebook.com/1.0/facebook.xsd"> <host>9.channel</host> <port>80</port> <channel>p_123456789</channel> <seq>0</seq> 

W międzyczasie łączy się również z witryną iphone.facebook.com, która dostarcza trochę XML. Następnie łączy do 0.9_channel.facebook.com:80 i wysyła żądania, które zwracają JSON.

Wygląda na to, że wszystko odbywa się na porcie 80. Czy na pewno nie ma innego problemu po Twojej stronie?

Odpowiedź

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *