【发布时间】:2021-09-10 17:48:48
【问题描述】:
我正在通过HealthKit 访问健康记录,问题是当我检查FHIR 数据时,使用isValidJSONObject 检查时它不是有效的JSON 数据。我对JSONSerialization不太熟悉,这是我第一次真正使用它。
let jsonObject = try JSONSerialization.jsonObject(with: fhirRecord.data, options: [])
print(jsonObject)
{
lotNumber = 11111;
occurrenceDateTime = "2021-01-01”;
patient = {
reference = "resource:0";
};
performer = (
{
actor = {
display = “Some place here“;
};
}
);
resourceType = Immunization;
status = completed;
vaccineCode = {
coding = (
{
code = 1;
system = “URL_HERE”;
},
{
code = 28581000087106;
system = “URL_HERE”;
}
);
};
}
【问题讨论】:
-
您能否展示您如何尝试验证 JSON 以及打印错误的位置?既然你成功打印了
jsonObject,那么实际上解析成功了。 -
所以你在
jsonObject上测试了isValidJSONObject?因为isValidJSONObject是来自(NS)Dictionary/(NS)Array要知道它是否可以是(NS)Data。请参阅stackoverflow.com/questions/40635993/… 目前,它正确解析了fhirRecord.data,您有NSDictionary的打印。你期待什么?如果您期望更多的“JSON 字符串”,那么您想要的是let jsonStr = String(data fhirRecord.data, encoding: .utf8)... -
啊,谢谢指正!我正在寻找
let jsonStr = String(data fhirRecord.data, encoding: .utf8)。我正在寻找创建一些Codable数据