Plugins
Plugins 的主要作用
Plugins 的主要作用PluginType 协议
PluginType 协议func willSend(_ request: RequestType, target: TargetType) { print("Sending request to: \(request.request?.url?.absoluteString ?? "")") }
func didReceive(_ result: Result<Moya.Response, MoyaError>, target: TargetType) { switch result { case .success(let response): print("Received response from: \(response.response?.url?.absoluteString ?? "")") case .failure(let error): print("Request failed with error: \(error.localizedDescription)") } }
func prepare(_ request: URLRequest, target: TargetType) -> URLRequest { var request = request request.addValue("Bearer token", forHTTPHeaderField: "Authorization") return request }
func process(_ result: Result<Moya.Response, MoyaError>, target: TargetType) -> Result<Moya.Response, MoyaError> { // 可以在这里修改响应或添加额外处理 return result }
插件的使用
常见的 Moya 插件
插件的优点
总结
Last updated