关于网络请求返回数据是nil的情况

根据网络请求返回的json数据,有可能后台返回的数据为空,得到(null)或者<null>的返回值。此时若不对该类型数据做判断,后面(大多数情况下是当作字符串)用到时会报错,导致应用崩溃。

对指定返回值做判断:

if(m_result==nil)

    NSLog(@"返回值是nil");

}

还有就是<null>:

if([m_result isEqual:[NSNUll null]])

    NSLog(@"返回值是null");

}

另外:在对通过KVC创建的数据模型赋值时,可以作如下处理,将字典数据的nil和NULL值转成@"",可以避免以后用该模型时赋值给字符串或者数组时崩溃。

[objc]  view plain  copy
 print ?
  1. -(void)setValue:(id)value forKey:(NSString *)key{  
  2.     if (value == nil || [value isEqual:[NSNull null]]) {  
  3.         value = @"";  
  4.     };  
  5.     [super setValue:value forKey:key];  
  6. }  

猜你喜欢

转载自blog.csdn.net/wakice/article/details/79160677
今日推荐