我正在尝试从错误的服务器响应中获取错误文本。然而,它证明自己很难。我刚刚将项目从Swift 2更新到Swift 3,从PromiseKit 3更新到PromiseKit 4.这是一个语法问题还是完全改变了?
}.catch { error in
var finalErrorText = "LoginViewController"
if case let PromiseKit.URLError.badServerResponse(_, data, _) = error,
let d = data,
let json = try? JSONSerialization.jsonObject(with: d, options: []) as? NSDictionary,
let errorArray = json?["non_field_errors"] as? [String],
let errorText = errorArray.first
{
finalErrorText = errorText
}