我使用了一个非 JSON 格式的 API 响应,但仍想对其进行解码,有哪些方法可以实现此阶段。
现在响应失败,无法解码 JSON: dataCorrupted(Swift.DecodingError.Context(codingPath: [], debugDescription: "给定的数据不是有效的 JSON。
我想解码,无论是否是非 json 响应
我尝试用 : 替换 =(equals) 并解析 JSON 并且它有效,但在做了一些更改后它停止工作了
回复采用这种格式
Data = { "value" = "pair"; "value2" = "pair2"; }
我的尝试
let validJSONString = rawString
.replacingOccurrences(of: "=", with: ":")
.replacingOccurrences(of: "NA", with: "null")
.replacingOccurrences(of: ";", with: ",")
一个选择是添加另一个替换以删除结尾的逗号
.replacing(/,\s*}/, with: "}")
所以整个转换是
let validJSONString = rawString
.replacingOccurrences(of: " =", with: ":")
.replacingOccurrences(of: "NA", with: "null")
.replacingOccurrences(of: ";", with: ",")
.replacing(/,\s*}/, with: "}")