宽带网络下Http请求会无响应或者反应很慢

最近写个程序,在不通过路由,直连宽带情况下,HTTP GET请求会抛出异常,提示远程服务器无响应,POST上传流数据可以请求到,但是第一次很慢,请求过一次就快了,GET请求也好了,实在是诡异。服务器为Tomcat9,客户端请求代码如下

 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(host+"/Yiyun/Api?method=getProxyIp");
            string result = "";
            try
            {
                //请求头
                req.Accept = "text/html, application/xhtml+xml, */*";
                req.UserAgent = "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko";
                req.ContentType = "multipart/form-data";
                req.Connection = "KeepAlive";
                req.Timeout = 10000;
                req.Method = "POST";

                HttpWebResponse wr = (HttpWebResponse)req.GetResponse();
                StreamReader sr = new StreamReader(wr.GetResponseStream());
                result = sr.ReadToEnd();
                sr.Close();
                wr.Close();
                ipList.AddRange(result.Split(','));
            }
            catch (Exception e)
            {
            }

2个回答

第一次GET请求的时候,查看服务器上,看是否收到请求,如果没有收到,可能第一次的时候网络给你拦截了

楼上说的很对,我再补充一下:
先在本地抛出你第一次get时拼合的那个URL字符串的完整内容,然后你检查看看有没有问题,再人工粘贴到浏览器访问一下看看是否能访问,如果不能访问的话一般都会给出相关的错误提示,再对症下药

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐