Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 重复问题:从JsonReader读取JObject时出错_C#_Asp.net_Parsing_Json.net_Restsharp - Fatal编程技术网

C# 重复问题:从JsonReader读取JObject时出错

C# 重复问题:从JsonReader读取JObject时出错,c#,asp.net,parsing,json.net,restsharp,C#,Asp.net,Parsing,Json.net,Restsharp,我有一个天气应用程序,可以持续接收JSON格式的天气相关信息。到目前为止,我正在使用Newtonsoft检索和解析响应。不幸的是,我时不时会遇到一个让人困惑的错误 代码运行正常,但几小时后,我的应用程序引发异常并显示以下错误: 从JsonReader读取JObject时出错。路径“”,第0行,位置0。 JSON结构 { “天气”:{ “城市”:“西雅图” “温度”:“20” “学位”:“C” }, } 代码 当我想检索城市、温度或温度时,我就是这样做的=> var city=result[“we

我有一个天气应用程序,可以持续接收JSON格式的天气相关信息。到目前为止,我正在使用Newtonsoft检索和解析响应。不幸的是,我时不时会遇到一个让人困惑的错误

代码运行正常,但几小时后,我的应用程序引发异常并显示以下错误:

从JsonReader读取JObject时出错。路径“”,第0行,位置0。

JSON结构

{
“天气”:{
“城市”:“西雅图”
“温度”:“20”
“学位”:“C”
},
}

代码

当我想检索城市、温度或温度时,我就是这样做的=>

var city=result[“weather”][“city”].ToString()

var-temperature=result[“weather”][“temperature”]。ToString()

var degrees=result[“weather”][“degrees”]。ToString()


哪里出错了?

在代码中,异常是从哪里抛出的?听起来可能服务器有时会返回一个不包含JSON的响应。您必须使用此服务器进行身份验证吗?可能是您的会话超时了吗?在尝试解析内容之前,您似乎没有检查请求是否成功。如果使用RestSharp,则
响应
对象上应该有一个
issusccessful
布尔值,或者应该有一个
StatusCode
可以查看。我也会检查以确保内容实际上是JSON。你说得很对。我可能需要检查
statuscode
以确保它成功。是的,我正在使用Restsharp。我应该在我的帖子中指出这一点。
  public static JObject GetWeather(string url)
        {
            var client = new RestClient(url);

            var request = new RestRequest(Method.POST);

            request.AddHeader("Content-Type", "application/json");

            var response = client.Execute(request);
            var content = response.Content;

            var result = JObject.Parse(content);

            return result;
        }