Alamofire.swift(二)-URLRequestCon

作者: Mr_Legend | 来源:发表于2016-11-08 19:55 被阅读209次

这一篇学习:
URLRequestConvertible协议相关内容

相同的方法:

public protocol URLRequestConvertible {
    /// Returns a URL request or throws if an `Error` was encountered遇到.
    /// - throws: An `Error` if the underlying `URLRequest` is `nil`.
    /// - returns: A URL request.
    func asURLRequest() throws -> URLRequest
}

下面是新的方式:扩展协议

Swift 能扩展协议
扩展 URLRequestConvertible 协议来添加一个属性
协议扩展能添加已经实现的属性和方法, 但是不能为协议添加新的必须要实现的属性和方法,很像你写泛型函数那样, 协议扩展的内部实现只能访问保证存在的其它属性的方法
添加到协议扩展中的属性和方法对于所有遵守该协议的类型来说都是可访问的。
引用->swift-协议扩展-焉知非鱼

extension URLRequestConvertible {
    public var urlRequest: URLRequest? { return try? asURLRequest() }
}

好,现在再实现继承这个协议的URLRequest:

extension URLRequest: URLRequestConvertible {
    public func asURLRequest() throws -> URLRequest { return self }
}

相关文章

  • Alamofire.swift(二)-URLRequestCon

    这一篇学习:URLRequestConvertible协议相关内容 相同的方法: 下面是新的方式:扩展协议 Swi...

  • Alamofire.swift(一)-URLConvertibl

    简单粗暴的学习方法:一行一行看,遇到问题,弄懂问题 首先来看4.0.1版本的代码行数: 6571 先从Alamof...

  • Alamofire.swift(三)-URLRequest

    url是继承了URLConvertible协议的类型 method是HTTPMethod枚举类型 public e...

  • 【swift源码阅读】Alamofire-Part2:Sessi

    Alamofire推荐给开发者的调用层是位于source文件夹下最外层的Alamofire.swift文件,我们先...

  • Alamofire源码解读

    下方截图是Alamofire.swift中的一个几个便利方法,都是调用Manager单例中相应的方法,便利方法为了...

  • Alamofire源码分析(一)---Alamofire.swi

    Alamofire.swift为网络请求的调用提供了接口,并提供了一些工具方法 1.两个协议URLConverti...

  • Alamofire 源码学习(四)- Alamofire.swi

    可以说,Alamofire.swift 是整个库的窗口,它定义了大部分公有接口和类型。拆解开来看,这个文件所包含的...

  • 二(二)

    发什么神经 突然就很想花钱 一边心疼 一边毫不在乎的花 啧 莫名其妙

  • 二,二

    2017.9.11教师节后的周一,第一次走进教室,刚站到讲台两个小可爱送给我两束花,原谅我那时候人还没有认全没有记...

  • 二〇二〇

    本来这篇小结打算年初写的,但是想想后边还有复试就先放一放,结果复试结束后过了两个月才想起要写这篇小结... 时过境...

网友评论

    本文标题:Alamofire.swift(二)-URLRequestCon

    本文链接:https://www.haomeiwen.com/subject/mzfzuttx.html