请大家帮看下工行查询接口时报错,怎么解决

tAction2007 2009-07-10 02:28:36
出错部分看中间的注释:

string sPostData = string.Format("APIName={0}&APIVersion={1}&MerReqData={2}", sAPIName, sAPIVersion, "TEST");
byte[] sData = Encoding.GetEncoding("GBK").GetBytes(sPostData);
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls; //SecurityProtocolType.Ssl3;
X509Certificate myCrt = X509Certificate.CreateFromCertFile(AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "\\File\\user.crt");
string strUrl = "https://corporbank.icbc.com.cn:443/servlet/ICBCINBSEBusinessServlet";
byte[] sData = Encoding.GetEncoding("GBK").GetBytes(sPostData);

HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(strUrl);
myRequest.Method = "POST";
myRequest.KeepAlive = true;
myRequest.ContentType = "application/x-www-form-urlencoded";
myRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";
myRequest.ClientCertificates.Add(myCrt);
myRequest.ContentLength = sData.Length;
Stream sm = myRequest.GetRequestStream();
sm.Write(sData, 0, sData.Length);
sm.Close();

//运行下面这句出错,报错:
//System.Net.WebException: 远程服务器返回错误: (403) 已禁止。
// 在 System.Net.HttpWebRequest.GetResponse()
HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();

Encoding encod = System.Text.Encoding.GetEncoding("GBK");
Stream smRes = myResponse.GetResponseStream();
StreamReader sr = new StreamReader(smRes, encod);
string sResult = sr.ReadToEnd();
//System.Xml.XmlDocument doc = new System.Xml.XmlDocument();

return sResult;
...全文
494 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
allengas0315 2010-02-11
  • 打赏
  • 举报
回复
引用 7 楼 taction2007 的回复:
谢谢 你们的回复,下午我就解决了,跟我分析一样是证书的问题。上面的代码本身并没有问题。本想结贴但是不能给自己给分结贴。


怎么解决的呀? 能不能发代码看一下
yt6901072 2009-09-05
  • 打赏
  • 举报
回复
工行支付开发交流
1227385358
非常欢迎做信用支付的交流
tAction2007 2009-07-10
  • 打赏
  • 举报
回复
谢谢 你们的回复,下午我就解决了,跟我分析一样是证书的问题。上面的代码本身并没有问题。本想结贴但是不能给自己给分结贴。
mengxj85 2009-07-10
  • 打赏
  • 举报
回复
关注,以后可能用到
Coding_Playing_Boy 2009-07-10
  • 打赏
  • 举报
回复
403应该是权限的问题,你看看帐号或者匿名访问有没开启
feifeiyiwen 2009-07-10
  • 打赏
  • 举报
回复
高手进来一下
tAction2007 2009-07-10
  • 打赏
  • 举报
回复
自己再顶一次,查了下帖子 Zyciis196 仁兄好像也遇到之类问题,不知道你是否都已解决?
tAction2007 2009-07-10
  • 打赏
  • 举报
回复
从错误代码分析,好像是说证书不对。但是这个证书支付接口我已用了。按理讲应该是对的。
tAction2007 2009-07-10
  • 打赏
  • 举报
回复
做过网上支付的帮看下,以上是向工行查询的完整代码

62,046

社区成员

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

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

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

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