我尝试获取 JSON 数据但出现错误。
解析值时遇到意外字符: 。路径'',行
0,位置 0。
我正在使用 Net 4.5 和 JSON.Net 框架
这是我的代码
WebClient net = new WebClient();
string str = await net.DownloadStringTaskAsync(url);
JObject o = JObject.Parse(str); // ERROR Here
我的代码 JSON Data View on Webservicehttp://sv1.volcanosoft.com/test/index.php?area=ho-chi-minh http://sv1.volcanosoft.com/test/index.php?area=ho-chi-minh该网站格式index.php UTF-8和php文件头
header('Content-Type:application/json; charset=utf-8');
echo '{"item":';
echo json_encode($data);
echo '}';
下载的字符串以两个开头字节顺序标记 http://en.wikipedia.org/wiki/Byte_order_mark(U+FEFF),JSON.NET 解析器(正确地)无法理解。
下载的字符串包含两个 BOM 的原因是您的服务发送的数据包含其中 3 个。第一个被 UTF-8 编码自动删除,但另外两个仍然保留。
BOM 对于无法存储所使用的字符集的文件很有用。但是您正在发送标头中使用的字符集,因此您根本不需要发送 BOM。而发送其中三个肯定是不正确的。
我相信这是由 PHP 文件中的 BOM 引起的,因此您应该从那里删除它们。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)