项目过程中,由于是收银系统需要从服务器获取支付二维码,会产生SSL连接的问题,在win7、win10上都没有问题,放到WIN XP上出现了The underlying connection was closed:could not establish trust,

经过查阅相关资料发现是证书问题,采用了最简单的快捷的禁止证书验证,代码如下

//将客户端访问的证书修改为无证书
ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => true;

代码放置的位置为进行HTTPwebRequest请求时,完全代码如下

 /// <summary>
/// 建立连接
/// </summary>
/// <param name="sendmenssage">发送字符串
/// <param name="message"></param>
/// <returns></returns>
public bool HttpConn(string sendmenssage, out string message)
{
try
{
//将客户端访问的证书修改为无证书
ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => true; request = (HttpWebRequest)WebRequest.Create(Common.Const.QueryUrl);//原因是这 每次都是一个新的request 上次abort不影响
request.Method = "POST";
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.1124)";
// request.ContentType = "application/octet-stream";//get
request.ContentType = "application/x-www-form-urlencoded;";//post
// request.Accept = "image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/xaml+xml, application/vnd.ms-xpsdocument, application/x-ms-xbap, application/x-ms-application, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*";
request.Accept = "*/*";
request.Timeout = * ;
request.AllowAutoRedirect = true;
StringBuilder data = new StringBuilder();
data.Append(sendmenssage);
// MyMsgBox.Show("send:" + sendmenssage+"\n "+this.GetHashCode());
Byte[] bytes = System.Text.Encoding.Default.GetBytes(data.ToString());
request.ContentLength = bytes.Length;
//AsyncCallback ac1 = null;
//ac1 = new AsyncCallback((IAsyncResult r) => { Stream writer = request.EndGetRequestStream(r); writer.Write(bytes, 0, bytes.Length); writer.Close(); }); //request.BeginGetRequestStream(ac1, null);
using (Stream writer = request.GetRequestStream())
{//同样的请求会卡在这
writer.Write(bytes, , bytes.Length);
writer.Close();
}
HttpWebResponse response;
// 获得响应流
using (response = (HttpWebResponse)request.GetResponse())
{
Stream s;
s = response.GetResponseStream();
StreamReader reader = new StreamReader(s);
StringBuilder sb = new StringBuilder();
string tmp = reader.ReadLine();
while (tmp != null)
{
sb.Append(tmp);
tmp = reader.ReadLine();
}
reader.Close();
message = sb.ToString();
}
request.Abort();
return true;
}
catch (Exception e)
{
Log.WriteLog("服务器连接异常:" + e.Message);
message = "";
return false;
}
}

XP环境下的网络证书问题的更多相关文章

  1. Windows XP环境下 搭建Android NDK环境

    搭建Android NDK环境 Windows XP环境下 1 一些下载 ① NDK r7:http://developer.android.com/sdk/ndk/index.html ② cygw ...

  2. 查看shell环境下,网络是否连通-curl/ping

    检查网络是否可用 curl www.baidu.com <!--STATUS OK--><html>...</html> ping www.baidu.com注意: ...

  3. 办公环境下k8s网络互通方案

    在 kubernetes 的网络模型中,基于官方默认的 CNI 网络插件 Flannel,这种 Overlay Network(覆盖网络)可以轻松的实现 pod 间网络的互通.当我们把基于 sprin ...

  4. MAC环境下生成Apple证书教程

    在MAC操作系统下,生成Apple证书比较简单,全图形化操作. 一.使用Keychain Access(钥匙串访问) MAC操作系统对证书的处理都采用了“Keychain Access”(中文系统名为 ...

  5. windows xp 环境下 Oracle8i 双击安装文件无反应的解决办法

    今天调试一份比较老的程序,数据库用的是Oracle8i,在本地xp系统上搞了半天,双击安装文件就是没反应! 在网上整理了一下解决办法: 1.将ORACLE软件拷贝到硬盘. (比如我拷贝到:F:\Ora ...

  6. Linux+Apache环境下安装SSL证书

    一.安装证书 (温馨提示:安装证书前请先备份您需要修改的服务器配置文件) 1.确认证书文件及证书路径.  例证书文件为:zzidc.com.jks,放置目录为Tomcat的conf目录下.  2.配置 ...

  7. Linux+Tomcat环境下安装SSL证书

    1.将申请好的证书(4个文件)文件放入/home/tomcat/apache-tomcat-9.0.12/conf/cert文件夹下2.(或者)将申请好的证书(4个文件)文件放入/home/tomca ...

  8. Windows servers 2008 环境下,CA证书服务器搭建。

    CA证书这个东西好像是很久之前的东西了,现在已经不大用了,不过还是作为一种服务,搭建一下. 环境:Windows servers 2008 (虚拟机环境) 1.配置IP地址. 2.添加角色. 选择Ac ...

  9. XP环境下C# 调用Pocess.start()时提示文件找不到的错误解决办法

    错误提示如下: System.ComponentModel.Win32Exception (0x80004005): 系统找不到指定的文件. 在 System.Diagnostics.Process. ...

随机推荐

  1. Linuxc - Makefile完成项目的管理。

    Makefile完成项目的管理. root@jiqing-virtual-machine:~/cspace/les2# ls main.c Makefile max.c max.h min.c min ...

  2. 推荐一款强大的3D家装开源软件

    2015年家装o2o着实火了一把.家装涉及到上门量尺,再设计,这个过程是免不了的. 目前基于bs架构的酷家乐,爱福窝等,流行起来就是着力于这点,通过一个点寻找突破口,进入深度挖掘,带动其他家具等产品来 ...

  3. Js DOM 详解

    DOM事件类 基本概念 DOM事件的级别 1.DOM0 element.onclick = function(){} 2.DOM2 element.addEventListener("cli ...

  4. 移动端 -webkit-user-select:text; ios10 bug 解决方案

    移动端一般body的css.会设置 作用就不解释了: body{ height:100%;min-height:100%; font-family: "微软雅黑",'Helveti ...

  5. 自己写的日志框架--linkinLog4j--日志框架的必要性

    OK,在开始研究Log4j的源码之前,我们先来自己模拟一个日志工具,名字就叫linkinlog4j好了. 在软件开发过程中,出现bug总是在所难免:事实上,以我个人经验,即使在实际开发阶段,fix b ...

  6. awk的批量replace功能

    awk的批量replace功能 需求 现在需要替换一个文本 文本内容如下 $cat file MD_D1TS_1_060_I MD_D1TS_1_061_F MD_D1TS_1_062_U MD_D1 ...

  7. awk 字符串处理函数

    awk提供了许多强大的字符串函数,见下表:awk内置字符串函数gsub(r,s)    在整个$0中用s替代rgsub(r,s,t)    在整个t中用s替代rindex(s,t)    返回s中字符 ...

  8. JDK安装及Tomcat安装

    JDK安装及Tomcat安装 JDK 解压JDK到常用盘符 D为例 Tomcat安装 将tomcat.zip解压到常用的根目录下,我这里以D盘为例.这样就算安装好了! 接下来开始配置环境变量,打开环境 ...

  9. iOS-属性字符串添加下划线、删除线

    常用到的属性字符串 ///定义属性字符串NSMutableAttributedString *att = [[NSMutableAttributedString alloc]initWithStrin ...

  10. 【OS】NMON的简介和使用

    [OS]NMON的简介和使用 目前NMON已开源,以sourceforge为根据地,网址是http://nmon.sourceforge.net. 1. 目的 本文介绍操作系统监控工具Nmon的概念. ...