首页 > 解决方案 > 拦截 Alamofire 响应

问题描述

我需要能够拦截所有请求的响应,以覆盖case .failure(let error)以下闭包中的默认实现:

apiClient.request("some url", method: .post, parameters: ..., encoding: JSONEncoding.default, headers: sessionHeaders).validate(statusCode: 200...200).responseObject(queue: DispatchQueue.global(), completionHandler: { [weak self] (response:  DataResponse<ResponseObject<ObjectX>>) in
            guard let `self` = self else { return }
            switch response.result{
            case .success(_):

            case .failure(let error):
                // Handle error
            }
        }

因此,我不需要为每个响应执行相同的实现,而是需要能够在一个地方执行此操作。我在文档中发现了一些名为RequestAdapter但是,这仅适用于被解雇之前的请求。

标签: iosalamofire

解决方案


推荐阅读