QuerySerialization
QuerySerialization 是一个Swift库,允许您将字典编码成查询字符串,也将查询字符串解码成字典。它还支持自动百分比编码/解码。
平台
- iOS 8.0+
- macOS 10.9+
- tvOS 9.0+
- watchOS 2.0+
- Linux
安装
QuerySerialization版本与Swift版本
Swift | QuerySerialization |
---|---|
4.X | >= 1.1.0 |
3.X | >= 1.0.0 |
Swift 包管理器
将此行添加到您的 Package.swift
.Package(url: "https://github.com/alexaubry/QuerySerialization.git", from: "1.1.0")
CocoaPods
将此行添加到您的 Podfile
pod "QuerySerialization"
Carthage
将此行添加到您的 Cartfile
github "alexaurby/QuerySerialization"
手动方式
将 QuerySerialization.swift
文件拖入您的项目。
用法
使用 QuerySerialization
类来编码或解码查询字符串。
编码
要将字典编码为查询字符串,请调用
let queryElements = ["key":"value","message":"Hello world"]
let queryString = QuerySerialization.queryString(fromDictionary: queryElements)
// queryString = "key=value&message=Hello%20world"
如您所见,默认情况下会自动添加百分号编码。您可以使用此方法来禁用此功能
let queryElements = ["key":"value","message":"Hello world"]
let queryString = QuerySerialization.queryString(fromDictionary: queryElements, urlEncode: false)
// queryString = "key=value&message=Hello world"
解码
要将查询字符串解码为 Dictionary,请调用
let queryString = "key=value&message=Hello%20world"
let queryElements = QuerySerialization.decode(queryString: queryString)
// queryElements = ["key":"value","message":"Hello world"]
如果一个键或值包含百分比编码,它将自动被删除。您可以通过使用以下方式来禁用此功能
let queryString = "key=value&message=Hello%20world"
let queryElements = QuerySerialization.decode(queryString: queryString, removePercentEncoding: false)
// queryElements = ["key":"value","message":"Hello%20world"]
作者
- Alexis Aubry [email protected]
- 您可以在Twitter上找到我:@_alexaubry
许可证
QuerySerialization可在MIT许可证下使用。有关更多信息,请参阅LICENSE文件。