我想在用户搜索搜索栏上的文本时发送json服务。这里的问题是我返回NSData对象的空值,这里的问题是什么?如果我定义了我在控制台中打印的相同URL,但是这里有什么问题?
-(void)doIt{
NSURL *url = [NSURL URLWithString:weburls];
NSData *data =[NSData dataWithContentsOfURL:url];
[self getData:data];
}
如果我会这样写,那么它有效,但我想在搜索栏事件上调用该服务,但是有问题
NSString *weburl = [NSString stringWithFormat:@"%@%@",
@"http://192.168.1.196/ravi/iphonephp?mname=",searchText];
NSLog(@"%@",weburl);
NSURL *url = [NSURL URLWithString:weburl];
NSLog(@"the url is : %@",url);
NSError *error;
NSData *data =[NSData dataWithContentsOfURL:url options:nil error:&error];
NSLog(@"Data is :%@",data);
NSLog(@"the Error massage is : %@",error);
[self getData:data];
给我控制台价值,如
customCellDemo[1553:f803] the url is : http://192.168.1.196/ravi/iphonephp?mname=a
2012-03-16 15:26:36.259 customCellDemo[1553:f803] Data is :(null)
2012-03-16 15:26:43.624 customCellDemo[1553:f803] the Error massage is : Error
Domain=NSCocoaErrorDomain Code=256 "The operation couldn’t be completed. (Cocoa error 256.)"
UserInfo=0x6ab2760 {NSURL=http://192.168.1.196/ravi/iphonephp?mname=a}
答案 0 :(得分:0)
来自the manual of dataWithContentsOfURL;
返回值:包含位置数据的数据对象 由aURL指定。如果数据对象不能,则返回nil 创建
换句话说,它可能无法创建NSData(不太可能),也可能无法从您提供的URL获取任何数据。我建议您尝试使用dataWithContentsOfURL:options:error:
来获取错误代码并能够诊断问题。