是否有任何自定义编码将 Bool 编码为 true 而不是 0 或 1 ?
URLEncoding 可以选择将 Bool 更改为文字或数字。但是 JSONEncoding.default 没有那个选项。
有没有人针对这个问题创建了 JSONEncoding ?
是否有任何自定义编码将 Bool 编码为 true 而不是 0 或 1 ?
URLEncoding 可以选择将 Bool 更改为文字或数字。但是 JSONEncoding.default 没有那个选项。
有没有人针对这个问题创建了 JSONEncoding ?
您需要boolEncoding: .literal
在URLEncoding
初始化程序中设置。
您可以使用以下方法直接转换布尔值,默认返回false。它适用于 Bool 作为文字或数字。
func boolean(_ anything: Any?) -> Bool {
if let any = anything {
if let num = any as? NSNumber {
return num.boolValue
} else if let str = any as? NSString {
return str.boolValue
}
}
return false
}