在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
常规情况下创建Web请求,并获取请求数据的代码如下: WebRequest req = WebRequest.Create(url); req.Timeout = 15000; WebResponse result = req.GetResponse(); Stream ReceiveStream = result.GetResponseStream(); 如果需要在代码中加入证书,则需要使用HttpWebRequest对象进行请求,代码如下: //添加验证证书的回调方法 ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate); HttpWebRequest httpRequest = (HttpWebRequest)HttpWebRequest.Create(strQueryURL); X509Certificate cerCaiShang = new X509Certificate(System.Web.HttpContext.Current.Server.MapPath(setting.PfxFile), setting.key); httpRequest.ClientCertificates.Add(cerCaiShang); HttpWebResponse httpResponse = (HttpWebResponse)httpRequest.GetResponse(); Stream receiveStream = httpResponse.GetResponseStream(); // 回调方法 public static bool ValidateServerCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { if (sslPolicyErrors == SslPolicyErrors.None) return true; return false; } 本来这就算是完成了,但总是失败,原因未知,与万恶的Windows有关,还需要将客户端的证书+私钥(pfx 或p12 文件),导入到操作系统(windows)的相关证书区域,步骤: Windows xp/2003 1. 单击 开始 ,单击 运行 ,键入 mmc ,然后单击 确定 。 2. 在 文件 菜单上单击 添加/删除管理单元 。 3. 在 添加/删除管理单元 对话框中,单击 添加 。 4. 在 添加独立管理单元 对话框单击 证书 ,然后单击 添加 。 5. 在在 证书管理单元中 对话框中单击 计算机帐户 ,然后单击 下一步 6. 在 选择计算机 对话框中,单击 完成 。 7. 在 添加独立管理单元 对话框单击 关闭 ,然后单击 确定 。 8. 展开 证书 (本地计算机) ,展开 个人 ,然后单击 证书 。 9. 右键 -》 所有任务-》导入 选择你的证书导入 Windows 7 1. 单击 开始 ,单击 运行 ,键入 mmc ,然后单击 确定 。 2. 在 文件 菜单上单击 添加/删除管理单元 。 3. 在 可用的管理单元 列表中选择 证书 ,点击 添加 。 4. 在 证书管理 对话框中选择 计算机账户 ,然后单击 下一步 5. 在 选择计算机 对话框中,单击 完成 。 6. 在 添加或删除管理单元 对话框单击 确定 。 7. 展开 证书 (本地计算机) ,展开 个人 ,然后单击 证书 。 8. 右键 -》 所有任务-》导入 选择你的证书导入 再次测试,就可以使用了。 参考:http://blog.wsdd.org/?p=510 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论