以下链接提供的JSON有什么问题???
http://bruceexpress.com/beerstore/test/getottawaeaststorebeerlist.php
使用PHP,我从SQL查询生成上述JSON并使用json_encode对其进行编码。
$retval = mysqli_query($connection, $sql);
if(! $retval )
{
print('Could not select: ' . mysqli_error());
}
$storearray = array();
while($row = mysqli_fetch_assoc($retval))
{
$storearray[] = $row;
}
header('Content-Type: application/json');
echo json_encode($storearray);
在SWIFT中:
json = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers)
抛出NSCocoaErrorDomain Code = 3840异常。 " JSON文本不以数组开头...."
我抓住了异常并打印了数据,我看到了这一点:
("<!DOCTYPE html>\n[{\"beer_id\":\"1650\",\"store_id\":\"4618\"},{\"beer_id\":\"1650\",\"store_id\":\"4607\"},{\"beer_id\":\"1650\",\"store_id\":\"4616\"},{\"beer_id\":\"1650\",\"store_id\":\"4604\"},{\"beer_id\":\"5213\",
..........(等我没有复制整件事。太长了。&#34;)
我知道有很多这样的问题,但我仍然没有看到我需要的答案。我的JSON有什么问题?
答案 0 :(得分:0)
首先在没有BOM的情况下以UTF-8编码您的php文件。并删除<?php
标记之前的所有空格
其次,如果你想发送标题,不要打印任何东西;
第三,你真的需要在你的脚本中进行一些检查和返回,因为我现在看到将来会出现至少2个错误