0
我想解析一個HTML頁面,但該頁面需要用戶名/密碼才能訪問數據。 如何將憑據傳遞到服務器,以便我可以將網頁加載到我的NSData對象中?加載stringWithContentsofURL需要憑據
更新評論下面
一般來說,如果你正在使用的網絡瀏覽器,它會彈出一個登錄窗口,爲您鍵入的憑據。當我在iOS中執行它時,它不會給我任何東西。
非常感謝! Alan
我想解析一個HTML頁面,但該頁面需要用戶名/密碼才能訪問數據。 如何將憑據傳遞到服務器,以便我可以將網頁加載到我的NSData對象中?加載stringWithContentsofURL需要憑據
更新評論下面
一般來說,如果你正在使用的網絡瀏覽器,它會彈出一個登錄窗口,爲您鍵入的憑據。當我在iOS中執行它時,它不會給我任何東西。
非常感謝! Alan
您可以使用ASIFormDataRequest
。看看它here
NSURL *tempUrl = [NSURL URLWithString:@"http://www.yoursitetoparse.com"];
ASIFormDataRequest *request = [[ASIFormDataRequest alloc] init];
request = [ASIFormDataRequest requestWithURL:tempUrl];
[request setDelegate:self];
[request setRequestMethod:@"POST"];
[request setUsername:@"username"]; //Username
[request setPassword:@"password"]; //Password
[request startAsynchronous];
而且它的委託方法:
-(void)requestFailed:(ASIHTTPRequest *)request
{
NSError *error = [request error];
NSLog(@"Failed %@ with code %d and with userInfo %@",[error domain],[error code],[error userInfo]);
}
-(void)requestFinished:(ASIHTTPRequest *)request
{
NSLog(@"Finished : %@",[theRequest responseString]);
}
你想從頁面的數據? – Imirak 2012-08-02 23:16:20
網站上是否有登錄區域,或窗口是否出現要求提供憑據? – bdev 2012-08-02 23:17:48
不要使用stringWithContentsOfURL ...它不能處理那種信息,它會阻止你的線程等待數據。使用NSURLConnection或ASIHTTPRequest來使用網絡連接。 – borrrden 2012-08-02 23:38:31