【发布时间】:2015-08-24 19:14:42
【问题描述】:
我是JSON 的菜鸟。在我的研究中,我可以看到使用 JSON 与其他 api 方法相比的价值,但我遇到了一个独特的情境问题。
但是,我的问题在于尝试解析 JSON 数据。我在C# 中尝试了三种不同的方法来通过 URL 解析数据并不断收到各种错误。我相信我最近的方法会得到我正在寻找的东西,但是现在当我尝试执行代码时遇到了一个一般错误。
static void Main(string[] args)
{
ExecuteRiskSearch();
Console.ReadLine();
}
static void ExecuteRiskSearch()
{
string url = "https://localhost/api/getWatchList/EDD9-5FFA-2A6A-3CB9ZCC";
JObject results = JObject.Parse(url);
foreach (var result in results["results"])
{
string cid = (string)results["CID"];
JToken rank = results["rank"];
string risk = "";
if (rank is JValue)
{
risk = (string)rank;
}
else if (rank is JArray)
{
risk = (string)((JArray)rank).First;
}
Console.WriteLine("CID: {0}, Rank:{1}", cid, risk);
}
}
错误发生在JObject results = JObject.Parse(url);
Newtonsoft.Json.dll 中出现“Newtonsoft.Json.JsonReaderException”类型的未处理异常 附加信息:解析值时遇到意外字符:h。路径'',第 0 行,第 0 位置。
您能否说明为什么会发生这种情况?我是否基于此?
【问题讨论】:
-
所以您希望我们在不了解您的 json 的情况下调试您的代码?顺便说一句:
JObject.Parse需要一个有效的 json 字符串,而不是 URL。 -
我认为您的意思是 REST 而不是 JSON。
-
我无法添加我的 json 它是敏感数据。但是,json 是非常基本的两个字段“CID”和“rank”。