HttpWebResponse 在ASP.NET 中出现 无法连接到远程服务器问题

我想成仙啊啊啊 2019-07-14 03:17:41
最近我碰到一个比较奇怪的问题,我在asp.net程序中调用 HttpWebResponse 来获取WEB页面内容, 每次GetResponse的时候都出现: Unable to connect to the remote server (无法连接到远程服务器) 或者是(服务器500) 错误。 但是在浏览器中是可以打开网址的,请问一下是什么原因。(之前几个月都用的好好的,最近突然变成这样子)
环境:win10 64位系统 .Net 4.6.1
windows防火墙我已经关闭,没有其他的第三方杀毒软件。
浏览器可以正常打开:

错误显示:

代码如下:

try
{
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url);

httpWebRequest.Method = "POST";
//httpWebRequest.ContentLength = sendJson.Length;
httpWebRequest.ContentType = "txt/plain";

using (StreamWriter requestStream = new StreamWriter(httpWebRequest.GetRequestStream()))
{
requestStream.Write(sendJson);
}

HttpWebResponse response = (HttpWebResponse)httpWebRequest.GetResponse();
if (response.StatusCode != HttpStatusCode.OK)
{
string message = string.Format($"POST failed. Received HTTP {response.StatusCode}");
MessageBox.Show(message);
}
using (StreamReader sr = new StreamReader(response.GetResponseStream()))
{
data = sr.ReadToEnd();
}
if (data != null && data != "")
{
var javaScriptSerializer = new JavaScriptSerializer();
Expert = javaScriptSerializer.Deserialize<ExpertInformation>(data);
if (Expert.Result != null || Expert.Result != "")
{
result = Expert.Result;
}
}
else
{
Expert = null;
result = "服务器出错";
}
}
catch (WebException e)
{
MessageBox.Show("网络服务出错: " + e.Message);
Expert = null;
return "";
}
return result;
}
...全文
375 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ManBOyyy 2019-07-15
  • 打赏
  • 举报
回复
試試在這裡加一個try catch
HttpWebResponse res;
try
{
res = (HttpWebResponse)req.GetResponse();
}
catch (WebException ex)
{
res = (HttpWebResponse)ex.Response;
}
StreamReader sr = new StreamReader(res.GetResponseStream(), strEncode);
正怒月神 版主 2019-07-15
  • 打赏
  • 举报
回复
head的信息对比过吗?
BrucesLong 2019-07-15
  • 打赏
  • 举报
回复
会不会是没有开放跨域访问权限?
XBodhi. 2019-07-15
  • 打赏
  • 举报
回复
错误代码多少

httpWebRequest.ContentType = "txt/plain";
这个是否不符合要求。

  • 打赏
  • 举报
回复
引用 1 楼 q363186 的回复:
请求不合法呗,是否可以POST 请求?所需的标头添加了没有?cookie 带了没有? 浏览器正常 不代表 HttpWebRequest 也正常 一个网站 可以 动态验证合法请求 不是很正常吗?
代码是标准流程,应该是没有问题的,况且之前连接的好好的,最近才出现这种错误。
  • 打赏
  • 举报
回复
代码是标准流程,应该是没有问题的,况且之前连接的好好的,最近才出现这种错误。
楠小南 2019-07-14
  • 打赏
  • 举报
回复
请求不合法呗,是否可以POST 请求?所需的标头添加了没有?cookie 带了没有? 浏览器正常 不代表 HttpWebRequest 也正常

一个网站 可以 动态验证合法请求 不是很正常吗?

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧