c#开发联通wap定制退订接口碰到的一些问题及解决

问题及症状:
用手机定制或者退订业务后,应该有订购关系的数据插入到我们建的相应的数据表中,但是经过若干次测试始终不行,而且在IIS日志中看到大量的如下日志记录:
2006-12-27 08:37:46 211.94.69.240 - 172.18.2.43 80 POST /Uni/api/SubscriptNotify.aspx - 500 RPT-HTTPClient/0.3-3
2006-12-27 08:38:47 211.94.69.240 - 172.18.2.43 80 POST /Uni/api/SubscriptNotify.aspx - 500 RPT-HTTPClient/0.3-3
2006-12-27 08:39:48 211.94.69.240 - 172.18.2.43 80 POST /Uni/api/SubscriptNotify.aspx - 500 RPT-HTTPClient/0.3-3
2006-12-27 08:40:48 211.94.69.240 - 172.18.2.43 80 POST /Uni/api/SubscriptNotify.aspx - 500 RPT-HTTPClient/0.3-3
2006-12-27 08:41:48 211.94.69.240 - 172.18.2.43 80 POST /Uni/api/SubscriptNotify.aspx - 500 RPT-HTTPClient/0.3-3
2006-12-27 08:42:48 211.94.69.240 - 172.18.2.43 80 POST /Uni/api/SubscriptNotify.aspx - 200 RPT-HTTPClient/0.3-3
............


分析:
从日志中可以看出post请求发起的网关确实为北京联通的IP,也就是说网关确实已经将定制退订的数据包发到我们的定制退订接口,但是此时接口程序报500错误,而且此错误不停的出现。经过分析和询问有经验的朋友认为才错误不停的出现就是因为接口程序出错导致没有向联通返回正确的响应信息造成的,因此问题的关键还是放在了如何解决接口程序报错上。 程序用vs .net 1.1framework c#开发, 模拟测试也没有发现问题, 于是在服务器上使用抓包工具看看当接收到联通的post数据后,程序返回了什么错误信息,由于联通业务定制后订购关系的同步时间有时候很长(大约5分钟~40分钟:我大概估算的 :S) 所以需要很耐心的等待一段时间, 抓到后,错误的返回包信息如下:

POST /Uni/api/SubscriptNotify.aspx HTTP/1.1
Host: api.3gpop.cn
Connection: Keep-Alive, TE
TE: trailers, deflate, gzip, compress
User-Agent: RPT-HTTPClient/0.3-3
Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress
Content-type: application/x-www-form-urlencoded
Content-length: 648


HTTP/1.1 100 Continue
Server: Microsoft-IIS/5.0
Date: Wed, 27 Dec 2006 08:38:47 GMT
X-Powered-By: ASP.NET


你可能感兴趣的:(c#,wap,asp.net,exception,string,validation)