xyk blog

最近は iOS 開発の記事が多めです。

Swift 画像表示ライブラリ Nuke で画像取得失敗時のレスポンスステータスコードを知りたい

検証環境:
Xcode 13.4
Swift 5.6.1
Nuke 11.0.1

Swift の画像表示ライブラリである Nuke (https://github.com/kean/Nuke) で、画像取得に失敗した時のレスポンスステータスコードを知りたい状況があったのだが、Error 情報から取り出す方法がちょっと面倒だったのでメモしておく。

ImagePipeline.shared.loadImage(with: url) { result in

    if case .failure(let pipelineError) = result,
        case ImagePipeline.Error.dataLoadingFailed(let dataLoaderError) = pipelineError,
        case DataLoader.Error.statusCodeUnacceptable(let responseCode) = dataLoaderError {
        print("responseCode: \(responseCode)")
    }
}