关于c#:JObject解析注释时出错

JObject Error parsing comment

试图获取有关YouTube视频的一些信息:

1
http://gdata.youtube.com/feeds/api/videos/BDQqSnSEuyk?v=2&alt=jsonc&callback=storeInfo

结果是JSON。

我尝试使用JSON.net反序列化它:

1
JObject JObj = (JObject)JsonConvert.DeserializeObject(gDataResult);

我收到此错误:

1
Error parsing comment. Expected: *, got /. Path '', line 1, position 1.

这是因为单//评论。


阅读数据文件时必须更加小心。 这不是JSON。 这是JSON-P。 即使您提供的URL也表明:请注意最后的callback=storeInfo

JSON-P与JSON的不同之处在于对象包含在函数调用中:

1
2
// API callback
storeInfo({"apiVersion":"2.1","..... }}});

要成为简单的JSON,它必须是公正的

1
2
// API callback
 {"apiVersion":"2.1","..... }}};

使用此服务,只需使用http://gdata.youtube.com/feeds/api/videos/BDQqSnSEuyk?v=2&alt=jsonc的网址而不使用"回调"部分,您将获得正常的JSON响应。