C# post数据时 出现如下错误: System.Net.WebException: 操作超时

简介: net(客户端)调用IIS(服务端)出现503后,就报操作超时错误问题描述: 服务端环境: IIS 客户端环境: windowsxp + iis + .net 调用时出现如下错误: System.Net.WebException: 远程服务器返回错误: (503) 服务器不可用。
net(客户端)调用IIS(服务端)出现503后,就报操作超时错误

问题描述:
服务端环境:
IIS

客户端环境:
windowsxp + iis + .net


调用时出现如下错误:
System.Net.WebException: 远程服务器返回错误: (503) 服务器不可用。
在 System.Net.HttpWebRequest.GetResponse()
在 TestWebRequest.WebMessage.SendRequest(Byte[] data, String urlStr)

接着就出现如下错误:

System.Net.WebException: 操作超时
在 System.Net.HttpWebRequest.GetRequestStream()

最后一直是这个错误

System.Net.WebException: 操作超时
在 System.Net.HttpWebRequest.GetRequestStream()

当服务器恢复正常时,访问已经是200时,这个线程还是返回操作超时,经过N多测试,最后如下一行完美解决:

myRequest.ServicePoint.Expect100Continue = false;


public byte[] SendRequest(byte[] data, string urlStr)
2{
3try
4{
5 Stream streamSend = null;
6 HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(urlStr);
7 myRequest.Method = "POST";
8 myRequest.ContentType = "text/xml";
9 myRequest.Accept = "*/*";
10 myRequest.Timeout = 2000;
11 myRequest.UserAgent = "Mozilla-Firefox-Spider(Wenanry)";
12 myRequest.ContentLength = data.Length;
13//这个在Post的时候,一定要加上,如果服务器返回错误,他还会继续再去请求,不会使用之前的错误数据,做返回数据
14 myRequest.ServicePoint.Expect100Continue = false;
15
16 HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore);
17 myRequest.CachePolicy = noCachePolicy;
18
19try
20{
21 streamSend = myRequest.GetRequestStream();
22 streamSend.Write(data, 0, data.Length);
23 streamSend.Close();
24 }

25catch (WebException wex)
26{
27 log.Debug("WebException=" + wex.ToString() + ",wex.Status=" + wex.Status);
28if (streamSend != null)
29 streamSend.Close();
30 streamSend = null;
31 myRequest = null;
32return null;
33 }

34catch (Exception ex)
35{
36 log.Debug("GetRequestStream=" + ex.ToString());
37if (streamSend != null)
38 streamSend.Close();
39 myRequest = null;
40return null;
41 }

42
43byte[] byteArr = new byte[256];
44 Stream streamRequest = null;
45try
46{
47 streamRequest = myRequest.GetResponse().GetResponseStream();
48 }

49catch (Exception httpex)
50{
51 log.Debug("SendRequest=" + httpex.ToString());
52if (streamRequest != null)
53 streamRequest.Close();
54 myRequest = null;
55return null;
56 }

57 Bytes bytes = new Bytes();
58int count = streamRequest.Read(byteArr, 0, 256);
59while (count > 0)
60{
61 bytes.writeByteArr(Bytes.byteSub(byteArr, 0, count));
62 count = streamRequest.Read(byteArr, 0, 256);
63 }

64 streamRequest.Close();
65return bytes.getByte;
66 }

67catch (Exception eee)
68{
69 log.Debug("eee=" + eee.ToString() + eee.Source + eee.StackTrace);
70 }

71return null;
72 }

相关文章推荐

C# post数据时 出现如下错误: System.Net.WebException: 远程服务器返回错误: (417) Expectation Failed 的解决办法

.net(客户端)调用php(服务端)出现417错误 问题描述: 服务端环境: linux + apache(lighttpd) + php5 客户端环境: windowsxp + ...

C# post数据时 出现如下错误: System.Net.WebException: 操作超时

net(客户端)调用IIS(服务端)出现503后,就报操作超时错误 问题描述: 服务端环境: IIS 客户端环境: windowsxp + iis + .net 调用时出现...
  • sweeee
  • sweeee
  • 2015年07月01日 11:38
  • 3544
'); (window.slotbydup=window.slotbydup || []).push({ id: '4765209', container: s, size: '808,120', display: 'inlay-fix' }); })();

System.Web.HttpException: 请求已超时 的解决办法。

原文:http://www.cnblogs.com/zxjyuan/archive/2011/03/14/1983363.html 今天做了个文件上传,可上传文件一大,就会出现请求已超时的错误,...

C# 模拟post遇到System.Net.WebException: 请求被中止: 请求已被取消

我用下面这段话:如下代码,模拟post请求,我的操作过程是先调用一次SendDataByPost获取需要的信息之后,再调用一次SendDataByPost继续下一步操作,结果提示如下异常:请教高手这是...

异常:"System.Net.WebException: 请求因 HTTP 状态 401 失败:Unauthorized。"

今天调试程序,突然WebService就不能用了,提示:“System.Net.WebException: 请求因 HTTP 状态 401 失败:Unauthorized。”,找了半天没找到原因。最后...
'); (window.slotbydup=window.slotbydup || []).push({ id: '4983339', container: s, size: '808,120', display: 'inlay-fix' }); })();

远程服务器返回错误: (500) 内部服务器错误解决办法

在.net中发送 xml post请求和接受xml 的post请求时,经常会遇到“远程服务器返回错误: (500) 内部服务器错误”。 这里有2种解决办法:   第一种方法:修...
  • xb12369
  • xb12369
  • 2012年12月12日 16:33
  • 53872

expdp导出两表关联后的数据

有两张表t1、t2 t1表结构为 id、name、age

ADO.NET数据操作常见错误总结

1-数据库服务器无法连接问题凡是出现以上问题时,使用如下方法。1检查SQLServer服务是否打开:2检查连接字符串中的Server对应的服务器名称是否正确(注意默认实例,命名实例的名称)3如果示连接...

C#操作串口,带异常处理,解决端口占用时打开串口出现异常错误,串口关闭时发送数据报错

using System; namespace chuankou { /// /// Class1 的摘要说明。 /// class send { /// /// 应用程序的主...
目录
相关文章
|
10月前
|
物联网 数据处理 C#
C#实现上位机开发,串口通信,读写串口数据并处理16进制数据
C#实现上位机开发,串口通信,读写串口数据并处理16进制数据。在自动化、物联网以及工业控制行业中,上位机开发是一项重要的技能。本教程主要介绍使用C#进行上位机开发,重点在于串口通信和数据处理。
1993 82
|
8月前
|
网络协议 定位技术 网络安全
IPIP.NET-IP地理位置数据
IPIP.NET 是一家专注于 IP 地理位置数据的提供商,基于 BGP/ASN 数据与全球 800+ 网络监测点技术,提供高精度的 IPv4 和 IPv6 定位服务。其核心服务包括地理位置查询、详细地理信息和网络工具等,广泛应用于网络安全、广告营销、CDN 优化等领域。数据覆盖全球,支持多语言,每日更新确保实时性。IPIP.NET 提供 API 接口、离线数据库及多种语言 SDK,方便开发者集成使用。
1457 0
|
8月前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
328 0
|
12月前
|
开发框架 搜索推荐 算法
一个包含了 50+ C#/.NET编程技巧实战练习教程
一个包含了 50+ C#/.NET编程技巧实战练习教程
361 18
|
12月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
177 11
|
12月前
|
缓存 算法 安全
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
411 12
|
12月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
213 10
|
12月前
|
开发框架 人工智能 .NET
C#/.NET/.NET Core拾遗补漏合集(24年12月更新)
C#/.NET/.NET Core拾遗补漏合集(24年12月更新)
190 6
|
12月前
|
开发框架 算法 .NET
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
204 6
|
12月前
|
开发框架 Cloud Native .NET
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
205 6