我想通过iOS应用程序连接网络服务。以前我的网址是http://<domain name>/mobilews/mobilews.asmx
。最近我改为http://<domain name>/mobilewstest/mobilews.asmx
我已将我的网址放在info plist文件中。但在我将其更改为新URL后,我无法登录。
NSString *urlString = [NSString stringWithFormat:@"%@%@",serverURL,[queryString stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"GET"];
NSHTTPURLResponse *response ;
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
int statusCode = [((NSHTTPURLResponse *)response) statusCode];`
此处returnData
变为nill
且statusCode
为0.但此urlString
在浏览器中提供时已成功登录到Web服务。
答案 0 :(得分:0)
NSURL *url = [NSURL URLWithString:@"YOUR URL HERE"];
NSError *connectionError = nil;
NSData *inData = [NSData dataWithContentsOfURL:url options:NSDataReadingUncached error:&connectionError];
NSInteger code = [connectionError code];
if (code != 0)
{
NSString *locDesc = [NSString stringWithString:[connectionError localizedDescription]];
NSString *locFail = [NSString stringWithString:[connectionError localizedFailureReason]];
NSLog(@"Error: %d %@ %@", code, locDesc, locFail);
}
else if ([inData length] == 0)
{
NSLog(@"No data");
}
else{
NSData *resultData = [NSData dataWithContentsOfURL:url];
NSString *responseString = [[NSString alloc]initWithData:resultData encoding:NSUTF8StringEncoding];
}
我看到你发送一个同步请求...试试这个更简单的方法。