我想通过这个API
http://jsonplaceholder.typicode.com/photos/3
显示来自tar: Must specify one of -c, -r, -t, -u, -x
sh: line 1: --exclude=*/vendor: No such file or directory
sh: line 2: --exclude=.git: command not found
sh: line 3: -zvcf: command not found
的图片,由swiftyJson提供
我写了这段代码,但是返回nil
"url"
如何从API中提取图片? API中的所有图像都以相同的方式处理吗?
答案 0 :(得分:1)
该代码有效吗?正如我从API http://jsonplaceholder.typicode.com/photos/3
的回复中看到的那样{
"albumId": 1,
"id": 3,
"title": "officia porro iure quia iusto qui ipsa ut modi",
"url": "http://placehold.it/600/24f355",
"thumbnailUrl": "http://placehold.it/150/1941e9"
}
基本上,您对此代码subDataJSON["url"].stringValue
所做的就是检索" url"的值。节点,它将返回" http://placehold.it/600/24f355"。所以,我认为它不是你期望的base64字符串。而不是打电话
let decodedData = NSData(base64EncodedString: base64String, options: NSDataBase64DecodingOptions(rawValue: 0))
试试这段代码
let decodedData = NSData(contentsOfURL: NSURL(string: base64String))
但是,这可能会阻止您的UI线程,因为我们正在调用synchronized。更好的方法是
let dataTask: NSURLSessionDataTask = NSURLSession.sharedSession().dataTaskWithURL(NSURL(string: "")!) { (
data, response, error) -> Void in
if let imageView = self.MyImage {
dispatch_async(dispatch_get_main_queue()) {
imageView.image = UIImage(data: data)
}
}
};
dataTask.resume()