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

  • 相关阅读:
    C# 语言基础(++和--运算)
    Android RSA加密解密
    laravel redis
    larave5.1l队列
    shell更改目录编码
    Linux的权限说明
    MySQL主从架构之Master-Master互为主备
    php curl流方式远程下载大文件
    php session 跨页失效问题
    mysql中文字段转拼音首字母,以及中文拼音模糊查询
  • 原文地址:https://www.cnblogs.com/liuliuliu/p/5627891.html
Copyright © 2011-2022 走看看