swift - alamofire responseStreamString 解码
问题描述
最近开始学习 Swift :)
let req = AF.streamRequest(...)
req.responseStreamString { stream in
switch stream.event {
case let .stream(result):
switch result {
case let .success(string):
print(string)
case let .failure(error):
print("failure")
print(error)
}
case .complete(_): //
print("complete")
}
我如何获得我需要的实际价值,而不必每次都说选择第 4 行?
这是来自的输出print(string)
--eventStreamBoundary
Content-Type: text/plain
Content-Length: 23
20200428124609 5 X NULL
20200428124609 5 X NULL
是我追求的价值,我需要自定义解码还是内置的东西已经存在?
谢谢你
解决方案
DataStreamRequest
仅在Data
它们进入时提供(或解析的)值流,除了自动提供的内容之外,它不会对自身进行额外的解析URLSession
。您需要自己解析响应。这可以封装在一个DataStreamSerializer
而不是将所有逻辑放入一个闭包中。
您使用的是哪种 HTTP 响应格式?
推荐阅读
- python - 如何使用 Python 将 json 文件数据提取到 pandas df 中?
- python - 如何修复“Unndent 不匹配任何外部缩进”
- excel - 使用 VBA-Excel 从受保护的网站下载文件
- c++ - 创建对象类型的变量
- swift - 基于 JSON 响应锚定 UI 元素
- c - 在数据库中搜索
- javascript - How to re-render the Redux forms while using pagination
- python - 在 python 中编程一个非负流变量
- game-engine - 使用 DirectX 11 制作椭圆
- mysql - Mysql LEFT JOIN 给了我结果,RIGHT JOIN 也不是 INNER JOIN