从 'AFError' 到 'AFError' 的条件转换总是成功

Posted

技术标签:

【中文标题】从 \'AFError\' 到 \'AFError\' 的条件转换总是成功【英文标题】:Conditional cast from 'AFError' to 'AFError' always succeeds从 'AFError' 到 'AFError' 的条件转换总是成功 【发布时间】:2022-01-20 19:35:56 【问题描述】:

我正在使用 Alamofire,在执行获取请求后,我正在处理错误:

guard case let .failure(error) = response.result else  return 

if let error = error as? AFError 
    switch error 
            ...
    

问题:

if let error = error as? AFError 行内Xcode有警告:

Conditional cast from 'AFError' to 'AFError' always succeeds

如何修复(首选)或使该警告静音?

我试过了:

像这样删除它:

if let error = error 

但它说:

Initializer for conditional binding must have Optional type, not 'AFError'

谢谢

【问题讨论】:

【参考方案1】:

您已经处理了没有返回错误的情况。因此,error 保证是一个有效的错误对象——它不是可选的,所以你根本不需要if let

【讨论】:

以上是关于从 'AFError' 到 'AFError' 的条件转换总是成功的主要内容,如果未能解决你的问题,请参考以下文章

Alamofire - 如何从 AFError 获取 API 错误

如何从 AFError 中确定具体的 409 错误?

解析 JSON 时出现 AFError Alamofire 5

Alamofire+Combine:如何从 AFError 中获取自定义错误类型

有问题:'Result<Any, AFError>' 类型的值没有成员'value' [重复]

使用 Flickr API 时出现 Alamofire AFError