在Netfox和Moya中记录HTTPBody

时间:2017-10-31 14:16:23

标签: ios swift alamofire moya

我目前正在为我的iOS项目使用Moya。我尝试使用Netfox来记录我的HTTP请求。

由于Moya是Alamofire的包装器,我最终在Alamofire.SessionManager的{​​{1}}中创建了NFXProtocol的自定义URLSessionConfiguration。我成功收到了请求和响应的响应日志和标题,但总是错过了请求正文。

我偶然发现this fix on Netfox from 2015,但我不知道如何将它与Moya一起使用。你们中的任何人都知道如何实施它吗?

提前致谢!

1 个答案:

答案 0 :(得分:0)

只需为Moya使用网络日志记录插件,它已经是Moya的一部分,只需连接即可。您可以在实例化Moya提供程序时传递插件数组:

let plugins = [NetworkLoggerPlugin()]
let provider = MoyaProvider<MyNetworkApiService>(manager: manager, plugins: plugins)

要仅对开发启用日志记录,而对发行版本禁用日志,则可以执行下一步:

    var plugins: [PluginType] = []
    #if DEBUG
    plugins.append(NetworkLoggerPlugin())
    #endif
    let provider = MoyaProvider<MyNetworkApiService>(manager: manager, plugins: plugins)