摘要:Authentication ============== 安全验证可能有点复杂,一些网络请求需要认证,这里我们讨论两种常见的。 Basic HTTP Auth HTTP auth是HTTP协议自带的用户名/密码验证。如果你使用的是 HTTP auth,可以在初始化provider时提供一个 。 这
阅读全文
摘要:Endpoints ========= Endpoint是一种半私有的数据结构,Moya用来解释网络请求的根本构成。一个endpoint储存了以下数据: The URL. The HTTP method (GET,POST,等). The request parameters. The parame
阅读全文
摘要:Plugins ======= Moya plugins用于反映请求的发起或接收。Plugins定义为 属性,可以在请求准备发起和接收到返回数据时回调。 Built in plugins Moya有一些共通的默认plugins:安全认证(Authentication),网络请求进度管理(Networ
阅读全文
摘要:Providers ========= 使用Moya,你可以通过一个 的实例发送所有网络请求,通过枚举来指定你要访问的具体API。在配置你的 "Endpoint" 之后,你差不多就做好了基础配置: 简单配置后,你就可以使用: swift provider.request(.Zen) { result
阅读全文
摘要:Targets ======= 使用Moya,我们首先需要定义一个target 这通常是继承 协议的 变量。接下来,你的app只需要处理这些targets,也就是一些你希望调用API完成的操作。例如: 。 示例代码: Targets必须继承 。 协议要求在枚举中定义一个 属性。 注意:baseURL
阅读全文
摘要:“??”操作符可以判断输入并在当左侧的值是非 nil 的 Optional 值时返回其 value,当左侧是 nil 时返回右侧的值.例:var level: Int?var startLevel = 1var currentLevel = level ?? startLevel//currentL...
阅读全文
摘要:Guardguard是一种条件判断语句,可以类比if、assert。如果条件不符合,guard的else语句就运行,从而退出这个函数。具体写法如下:func fooGuard(x: Int?) { guard let x = x where x > 0 else { // 变量不...
阅读全文