让我先说这个问题,我对 JSON 没有经验,所以如果我说错了什么,请纠正我。我已经搜索了几个小时,但找不到我的问题的解决方案。所以,我运行了一些 php,它应该返回包含 3 行数据的 JSON(高分表中的前三个用户)。
在 php 文件中,我这样回显每一行:
while ($row = $result->fetch_assoc()) {
echo (json_encode($row));
}
但是,当我尝试解析输出时:
func parseJSON(_ data:Data) {
var jsonResult = NSArray()
do {
jsonResult = try JSONSerialization.jsonObject(with: data, options: []) as! NSArray
} catch let error as NSError {
print(error)
}
}
控制台抛出错误:
错误域=NSCocoaErrorDomain 代码=3840 “垃圾在末尾。” UserInfo={NSDebugDescription=末尾的垃圾。}
这是服务器的实际输出:
{"userid":"8","name":"Sam","highscore":"215","rank":"1"}
{"userid":"9","name":"James","highscore":"210","rank":"2"}
{"userid":"10","name":"Julian","highscore":"162","rank":"3"}
根据jsonlint.com这不是有效的,但我不知道我能做些什么来解决这个问题。为什么 json_encode() 不在}括号后放置逗号,最重要的是如何修复无效的 JSON?谢谢你。
沧海一幻觉