我有以下字符串。我收到以下错误。你能告诉我可能出现的问题吗?
Unexpected character encountered while parsing value: C. Path '', line 0, position 0.
JsonTextReader error: System.Exception {Newtonsoft.Json.JsonReaderException}
这是我从客户端获取的JSON字符串。
Content-Type: application/json
Content-Disposition: attachment; filename="postData.json"
{"name":"test44","age":"66","gender":"B","dob":"10\/10\/2003","file":null}
这是我使用JSON.NET解析的代码。
JsonTextReader reader = new JsonTextReader(new StringReader(json));
while (reader.Read())
{
if (reader.Value != null)
Console.WriteLine("Token: {0}, Value: {1}", reader.TokenType, reader.Value);
else
Console.WriteLine("Token: {0}", reader.TokenType);
}
答案 0 :(得分:5)
您已在JSON字符串中包含HTTP标头 - 您不需要这些标头。您的json
值只是是这样的:
{"name":"test44","age":"66","gender":"B","dob":"10\/10\/2003","file":null}
我已经测试了您的代码,并且在包含标题时,我会得到与您相同的例外情况,但如果没有它们,那就没问题了。
你应该看一下你如何接收数据 - 通常很奇怪的是只获得那两个标题以及正文。您还没有告诉我们客户端如何提供数据,但是如果他们将应该给予主体的那些标题提供给他们,那么它就是客户端错误
答案 1 :(得分:0)
在我看来它正在从内容类型声明&中读取'C'。抱怨,不要包含http标题。