由于“内部”保护级别切换语句,无法访问Alamorfire的“值”

时间:2019-05-03 12:53:02

标签: swift alamofire

我一直无法将一些快速更新到Alamofire5。我已经阅读了有关Alamofire如何移至结果类型here以及 value 不在Alamofire的公共界面中的信息。我在将其纳入建议的switch语句时遇到了麻烦。任何帮助将不胜感激。

        AF.request(downloadurl).responseJSON { response in
        let result = response.result

        if let dict = result.value as? Dictionary<String, AnyObject> {
            if let datas = dict["data"] as? [[String:Any]]{
                for data in datas {
                    if let book = data["bookName"] as? String {
                        self._book = book
                    }

                    if let verse = data["text"] as? String {
                        self._verse = verse
                    }

                    if let chapter = data["chapter"] as? String {
                        self._chapter = chapter
                    }
                completed()
                }
            }
        }
    }

1 个答案:

答案 0 :(得分:1)

您可以使用简单的switch来管理响应的成功或失败

switch response.result {
case .success(let json):
   // do what you need
case .failure(let error):
   // do what you need
}