DynuREST 1.3.0

DynuREST 1.3.0

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最后发布2019年4月
SPM支持SPM

Richard Piazza维护。



DynuREST 1.3.0

DynuREST

Version Platform

面对现实...一个只返回文本的 REST API 不算太现代。DynuREST 将 Dynu.com IP 更新 API 的文本响应转换为合适的 HTTP 状态码和有意义的错误。

安装

CocoaPods

pod 'DynuRest', '~> 1.3'

Swift 包管理器

.package(url: "https://github.com/richardpiazza/DynuREST", .upToNextMinor(from: "1.3.0"))

使用

API.swift

围绕 CodeQuickKit.WebAPI 提供了一层封装,用于处理用户名密码凭据组合。update() 函数将执行查询并解析返回的 ResponseCode

典型用法

let api = API(username: "username", password: "password")
api.update(ip: "127.0.0.1") { (statusCode, headers, data, error) in
    guard error == nil else {
        // Process Error
        return
    }
    
    guard statusCode < 300 else {
        // Non-OK response
        return
    }
    
    // All good
}

不安全的用法

api.dynu.com 当前版本的 SSL 证书与 iOS11.0 和 macOS10.13 不兼容。为了执行更新,必须使用不安全的 HTTP 连接。为了使用此连接,您的应用程序必须明确定义 Info.plist 中的 App Transport Security 来绕过该安全设置。

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>api.dynu.com</key>
        <dict>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
    </dict>
</dict>

ResponseCode.swift

表示从 Dynu.com API 应返回的状态代码。使用 init(stringValue:) 和测试响应来解析正确的响应。

String.swift

Swift.String 扩展,用于 IPv4 和 IPv6 地址的正则表达式匹配。