2016-11-29 21 views
0

在iOS中,我可以检查url如果是真实图像路径吗?如何检查图像的网址是真实存在的 - iOS?

如:

1)http://www.imgs.ie/uploads/banners/esb1.png

这是image真正url路径,但我怎么能检查它在代码中存在吗?

2)http://www.imgs.ie/uploads/banners/esb2.png

这是image故障url路径,但我怎么能检查它不是在代码存在吗?

编辑

感谢rmaddy的建议,我的要求是不要下​​载image,只是想知道的网址,如果是真实的图像的URL,就像URL的probe。我们可以检查。

+1

检查[这些搜索结果](http://stackoverflow.com/search?q=%5Bios%5D+check+u RL +存在)。你真的需要在你的问题中提供更多的细节。 – rmaddy

+0

@rmaddy,好的,我会 – aircraft

+0

仍在等待你的问题中的其他细节。你是否试图检查URL是否存在,而没有实际下载图像?请解释你想要的。这将有助于说明什么语言(Swift/Objective-C)。 – rmaddy

回答

0

为什么不要你试试这个:

var imageURL: NSURL? { 
    didSet { 
     image = nil 
     if view.window != nil { 
      fetchImage() 
     } 
    } 
} 

private func fetchImage() { 
    if let url = imageURL { 
     DispatchQueue.global(qos: .userInitiated).async { 
      self.spinner?.startAnimating() 
      let contentsOfURL = NSData(contentsOf: url as URL) 
      DispatchQueue.main.async { 
       if url == self.imageURL { 
        if let imageData = contentsOfURL { 
         self.image = UIImage(data: imageData as Data) 
        } else { 
         self.spinner?.stopAnimating() 
        } 
       } else { 
        print("ignored data returned from url \(url)") 
       } 
      } 
     } 
    } 
} 

而当你想使用IMAGEURL:

let ImageNames = ["esbn": "http://www.imgs.ie/uploads/banners/esb1.png"] 

func getImageNamed(imageName: String?) -> NSURL? { 
    if let urlstring = ImageNames[imageName ?? ""] { 
     return NSURL(string: urlstring) 
    } else { 
     return nil 
    } 
} 

imageURL = getImageNamed(imageName: imageName) 
0
uiimage *image = [uiimage imagewithurl:@"your url"]; 
if(image){ 
//exist 
} 
+0

优秀!!!!!! – cola

0

您可以使用Alamofire:

Alamofire.request(.GET, completeURLImage).response { (request, response, data, error) in 
if data != nil{ 
    imgView.image = UIImage(data: data!, scale: 1) 
    } 
} 
相关问题