`
mmdev
  • 浏览: 12922492 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

关于wp7中http的GetResponse抛异常的问题

 
阅读更多

昨天使用了http请求服务,用的是HttpWebRequest来创建的http连接。

结果总是在获取服务器响应状态时出现异常,下面是出异常的代码:

            try
            {
                HttpWebRequest request = ar.AsyncState as HttpWebRequest;
                HttpWebResponse response = request.EndGetResponse(ar) as HttpWebResponse;
                using (var stream = response.GetResponseStream())
                {
                    StreamReader reader = new StreamReader(stream);
                    string msg = reader.ReadToEnd();
                }
            }
            catch (Exception e)
            {
                string a = e.ToString();
            }

在执行
HttpWebResponse response = request.EndGetResponse(ar) as HttpWebResponse;
这一句时报异常The remote server returned an error: NotFound.


参考了部分资料,仍然是解决不了这个问题。

后来调整了post请求中的参数,竟然好了,返回状态码终于是200。

主要原因是服务器这边对post参数字段有一些特定的要求,比如必须是多少长度,或者不能遗漏哪个字段等等。


奇怪的是,如果是参数错误的话,接收的状态码应该是601(本服务器定义的状态码,指非法参数),但是它直接抛异常了;然而HttpStatusCode中的枚举量是没有这个值的(2XX 至 5XX),不知道是不是这个问题导致出现的异常。





分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics