ios - 将数据转换为布尔值
问题描述
我有一个 api 调用,它的响应是一个包含布尔值的数据。它不是JSON 对象,因此 JSONDecoder 无法对其进行解码。这是一些需要转换为Bool的字节。
respose in postman: true or false
要求什么:
let dataTask = session.dataTask(with: urlRequest) { responseData, urlResponse, err -> Void in
let data: Data = responseData
}
提前感谢您的帮助
解决方案
首先处理总是error
响应<74727565>
是字符串“true”。最简单的解决方案是responseData
直接比较Data
let dataTask = session.dataTask(with: urlRequest) { responseData, _, err in
if let error = err { print(error); return }
let success = responseData! == Data("true".utf8) // or == Data([116,114,117,101])
}
success
是true
如果响应为“真”,否则false
。
推荐阅读
- c - c语言数学库编译时出错(pow)
- python - 试图在 python 3 Tkinter UI 中使用变量时卡住了
- javascript - 如何使用钩子在reactjs中一起渲染嵌套组件
- winapi - 在 Rust 语言中使用 winapi SetClipboardData
- google-colaboratory - Google Colab 是否停止提供免费 RAM?
- ios - 转换不适用于 SwiftUI 中的路由器
- python - 如何从 Python 中的另一个函数调用列表?
- c# - 即使在更新到 .net 框架 4.7 后,Visual Studio 仍显示旧的目标 .net 框架
- arrays - TypeScript,如何正确使用 Array.prototype.reduce 和 Generic
- python - 左合并在 Pandas Dataframes 中不起作用