2012-02-09 70 views
0

你好程序員你好,ASIHTTPRequest我如何登錄?

簡介:我試圖編寫一個應用程序(在obj-C,與X代碼),這使我登錄到一個網站,並在這個網站上做一些東西。我知道C和C++,但這是我第一次寫「真正的應用程序」。 我試圖讓它在我的Mac上工作,然後我想寫IOS的同一個應用程序。

該網站是https://www.mymeteor.ie

1)登錄

NSURL *LOGIN_URL; 
LOGIN_URL = [NSURL URLWithString:@"https://www.mymeteor.ie/go/mymeteor-login-manager"]; 

ASIFormDataRequest *request; 

request = [ASIFormDataRequest requestWithURL:LOGIN_URL];  
[request setPostValue:@"**********" forKey:@"msisdn"]; //username 
[request setPostValue:@"****" forKey:@"pin"];   //password 
[request startSynchronous]; 

,當我進入這個請求返回正確的用戶名和密碼是200,響應串是下一個網頁的狀態代碼,你可以只有當您登錄領取。

但是,如果我輸入一個不同的用戶名和密碼的狀態代碼仍爲200,但響應串再次登錄頁面。

如何檢查,如果我在我登錄? 一旦我登錄,我想在網站上使用FreeWebText thingy。

什麼是做到這一點的最佳方式是什麼?什麼祕訣?

謝謝你的幫助

回答

0

你會想看看MyMeteor是否有API。 API將成爲第三方應用程序登錄並與網站互動的首選方式。 api可能會返回某種授權代碼,或者如果登錄不正確,則會返回錯誤,而不是返回整個網頁html。

如果他們沒有一個API,你需要刮所返回的HTML。您應該能夠找到兩個頁面之間的獨特區別,它們會告訴您是否實際登錄。這是相當不可靠的,因爲任何時候他們改變網站,它可以打破你的刮。

+0

嘿, THX的答覆。 我不認爲該網站有一個API(一直在尋找一個在過去幾天了)反正生病嘗試烏爾建議了。 我還發現,只要有人成功登錄,他們會收到CFID,CFTOKEN和jsessionid。這些顯示在地址欄中。 – BuildingJarl 2012-02-09 15:56:19

+0

它們是在響應頭或請求頭還是元數據中發送的? – BuildingJarl 2012-02-09 16:04:17