IOS:dataWithContentsOfURL方法返回值为空,什么原因?

  NSString *urlstr = [NSString stringWithFormat:@"%@",movie.pic_url];
    NSLog(@"URLSTR:%@",urlstr);
    urlstr = [urlstr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    NSURL *url = [NSURL URLWithString:urlstr];
    NSLog(@"URL:%@",url);
    NSData *imagedata  = [NSData dataWithContentsOfURL:url];
    NSLog(@"DATA:%@",imagedata);
    cell.imageView.image = [UIImage imageWithData:imagedata];
    

代码如上,url返回值有内容,但是到imagedata这里就是空了,这是怎么回事?要怎么改?

阅读 11.5k
5 个回答

能贴一下 NSURL 的输出嘛?

我也遇到此问题,请问解决了没有?

新手上路,请多包涵

我也遇到了这个问题,谁能给回答一下?

NSData* imageData = [NSURLConnection sendSynchronousRequest:[NSURLRequest requestWithURL:imageUrl] returningResponse:NULL error:&error];

error如下:
domain=nscocoaerrordomain code=256

我也遇到这个问题,我的tabbar是根据后台写的,所以拿到后台给的图片网址用dataWithContentsOfURL 下载图片给tabbar赋值。我在6 和 5c 上都可以显示,但是到6p上偶尔可以,偶尔不行。原因就是dataWithContentsOfURL 的结果是nil。用utf8转码,Allow Arbitrary Loads 也设置成YES了都不行。

新手上路,请多包涵

在info.plist文件里添加Key:App Transport Security Settings —— Allow Arbitrary Loads 为YES。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题