zoukankan      html  css  js  c++  java
  • Swift网络封装库Moya中文手册之Plugins

    Plugins

    Moya plugins用于反映请求的发起或接收。Plugins定义为 PluginType 属性,可以在请求准备发起和接收到返回数据时回调。

    Built in plugins

    Moya有一些共通的默认plugins:安全认证(Authentication),网络请求进度管理(Network Activity Indicator),以及日志(Logging)。

    Authentication

    authentication plugin允许用户给每个请求指定可选的 NSURLCredential。在请求接收到时没有活动。

    这个plugin可以在 Source/Plugins/CredentialsPlugin.swift 找到。

    Network Activity Indicator

    iOS的网络活动通常都在请求时有一个进度指示器,请求结束时移除。这个plugin在请求开始和结束时添加回调,可以记录进程中的请求数量,相应的显示/隐藏network activity indicator。

    这个plugin可以在 Source/Plugins/NetworkActivityPlugin.swift 找到。

    Logging

    开发过程在在控制台输出日志是很有用的。这可以是请求发送和接收时的任何东西,可以打印完整的headers,method,request body。

    这个plugin是提供的plugins中最复杂的,可以根据需求进行配置来满足app的不同编译类型。在初始化这个plugin时, 你可以选择打印命令,并且为输出数据提供函数 (这在你使用自己的log库代替print 时很有用),以及在打印前格式化数据 (返回值默认使用 NSUTF8StringEncoding 转换成字符串,但如果你想转换成JSON,可以传一个格式化函数,参考 in Demo/Demo/GitHubAPI.swift 里现成的 JSONResponseDataFormatter)

    这个plugin可以在 Source/Plugins/NetworkLoggerPlugin.swift 找到。

    Custom plugins

    这里有新建一个plugin的示例:docs/Examples/CustomPlugin.md

    转载请注明出处http://www.cnblogs.com/liuliuliu/p/5627891.html,并注明转载。

    原文链接
    翻译: bibibi_liuliu
    联系方式: 395985239@qq.com

  • 相关阅读:
    css选择器的分类及优先级计算方法总结
    第四周实验总结&实验报告
    2019春季总结
    第七周课程总结&实验报告五
    第六周学习总结&java实验报告四
    第二周Java学习总结
    第九周课程总结&实验报告(七)
    第五周学习总结&实验报告三
    第三周课程总结及实验报告
    第八周课程总结&实验报告(六)
  • 原文地址:https://www.cnblogs.com/liuliuliu/p/5627891.html
Copyright © 2011-2022 走看看