【发布时间】:2016-12-04 19:07:08
【问题描述】:
我正在尝试使用 google book api 获取图书详细信息。出错时,代码会调用回调方法,但不会被调用。
代码由 - Nicholas Addison 提供的 Git Hub 示例项目
import Alamofire
import SwiftyJSON
class BooksManager
{
static let sharedInstance = BooksManager()
func getBook(_ isbn: String, callback: @escaping (_ error: NSError?, _ book: Book?)->() )
{
Alamofire.request(
GoogleBookRouter.searchByISBN(isbn: isbn) )
.responseJSON
{
response in
if let error = response.result.error
{
logger.debug("Failed to call Google Books API: " + error.localizedDescription)
//FIXME:- wrap Alamofire error before returning
callback(error as NSError?, nil)
return
}
}
}
【问题讨论】:
-
您是否尝试添加断点并检查错误?
-
这是 Swift 3 吗?如果是,则删除完成处理程序中的所有参数标签。
(NSError?, Book?)->(). -
@vadian 谢谢。你的解决方案奏效了。万分感激。如果你回答,我会接受。
-
我写了一个答案。