在我的應用程序中,我有一個按鈕,它調用了ASIHTTPRequest。請求正常,我收到一個響應字符串。但是當請求結束時,它總是進入方法:requestFinished。我也有一個requestFailed方法。但即使當我給錯誤的鏈接,請求finsihes並永遠不會失敗..爲什麼這是?這是我的代碼:ASIHTTPRequest如何識別完成的請求和失敗的請求?
-(void)fetchForm:(id)sender {
NSURL *URL=[NSURL URLWithString:@"http://www.mydomain.nl/testGet.php"];
ASIHTTPRequest *request = [[[ASIHTTPRequest alloc] initWithURL:URL] autorelease];
[request setDelegate:self];
[request setDidFailSelector:@selector(requestFailed:)];
[request startAsynchronous];
}
-(void)requestFinished:(ASIHTTPRequest *)request {
NSLog(@"Request Success!");
}
-(void)requestFailed:(ASIHTTPRequest *)request {
NSLog(@"Request Failed!");
}
編輯:
我讀了ASIHTTPRequest網站上的一個小文件。我得出的結論是,如果有錯誤代碼,我需要親自查看。我這樣做有:
int statusCode = [request responseStatusCode];
if (statusCode == 404) {
NSLog(@"Statuscode 404 has occured!");
}
就我而言,它是一樣的。請求可以被做出,但是響應是某種錯誤字符串。但由於返回的錯誤字符串,ASIHTTPRequest一切正常,因爲返回的東西。我如何改變這一點? –
錯誤字符串從哪裏來?它的內容是什麼? – sergio
這只是一個404錯誤,如果我在瀏覽器中調用網址。它來自一個PHP頁面。 –