如何在映射之前修改 Moya 响应?
Posted
技术标签:
【中文标题】如何在映射之前修改 Moya 响应?【英文标题】:How to modify Moya response before its mapping? 【发布时间】:2018-12-11 13:55:31 【问题描述】:我可以使用Moya Plugin的func process(_ result: Result<Moya.Response, MoyaError>, target: TargetType) -> Result<Moya.Response, MoyaError>
方法修改Moya响应中的数据吗?
我需要将数据翻译成字典,添加一个字段,然后在映射之前翻译回数据。
谢谢!
【问题讨论】:
【参考方案1】:是的,这将是首选的方式。 另一种选择是覆盖 MoyaProvider 子类中的请求方法并拦截完成块。
您需要读取和修改您的数据,然后将其发回,如下所示:
let modifiedResponse = Response(statusCode: originalResponse.statusCode, data: modifiedData)
return .success(modifiedResponse)
【讨论】:
以上是关于如何在映射之前修改 Moya 响应?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Rx 编程 (Moya) 将 JSON 响应映射到对象