我正在開發一個應用程序,該應用程序連接到遠程Web服務器並經常與Web服務器交換數據。我的應用程序的第一個屏幕提供了驗證用戶的登錄屏幕。如何從發送的請求中檢索服務器的響應
我能夠通過向服務器發送請求來驗證Web服務器上的用戶,但無法從服務器獲得響應以向iPhone上的用戶顯示成功警報。很明顯,我沒有得到任何迴應。
我使用的服務器是用JAVA開發的。
我正在使用以下命令將請求發送到服務器。
NSString *post = @"username=";
post = [post stringByAppendingString:username];
post = [post stringByAppendingString:@"&password="];
post = [post stringByAppendingString:password];
NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:@"http://mysite.com/login.action?"]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:postData];
NSURLConnection *conn=[[NSURLConnection alloc] initWithRequest:request delegate:self];
而且,
- (void)connectionNSURLConnection *)connection didReceiveDataNSData *)data
{
[receivedData appendData:data];
NSString *ReturnStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"In \"didReceiveData()\" : receivedData = %@",receivedData);
NSLog(@"Return String : %@", ReturnStr);
}
此功能不會被調用。
我該如何接收我發送的請求的回覆?
我查詢的簡單集合: 例如:登錄屏幕,驗證在Java服務器用戶
- 我發送請求我能夠看到我的服務器應用程序的控制檯。
- 我無法獲得請求的回覆。
- 響應數據必須以何種格式發送?
誰能幫助我獲得通過指導我的iPhone應用程序和一個Java servlet之間的數據交換的清晰畫面完成這件事..
任何形式的幫助深表感謝..
在此先感謝.. Venkat
感謝ü您的快速反應傢伙..我還實施了這三種方法。但沒有來自服務器的迴應。你能指導我開發通過請求和響應與JAVA服務器通信的LOGIN應用程序嗎?我堅持溝通。
是的,我的服務器正在接收來自iphone的請求。我能夠看到發送到服務器的請求。
我無法理解iphone應用程序和JAVA服務器之間的數據交換是如何發生的。我是這個iphone開發的新手。
謝謝你們的快速回復。 我也實施了這三種方法。但沒有來自服務器的迴應。 您可以指導我開發LOGIN應用程序的過程,該應用程序通過請求和響應與JAVA服務器進行通信? 我堅持溝通。 – Venkat 2009-07-06 06:32:44
@Venkat:在上面的代碼中,你發佈了你的問題,其中你使用NSURLConnection * conn;你沒有收到任何警告「未使用變量」conn'「? – 2012-03-21 07:01:48