精华内容
下载资源
问答
  • 1、录制脚本时,提示证书过期  是因为jmeter代码只有1周有效期,只需要将firefox的jemter证书先删除,再导入即可 ...3、录制脚本时,上传商品图片提示‘ 上传失败’,或者一直是加载中,无法提交  是因为设置了代理

    1、录制脚本时,提示证书过期

          是因为jmeter代码只有1周有效期,只需要将firefox的jemter证书先删除,再导入即可

    2、打开firefox浏览器,提示代理错误

          是因为firefox设置了代理,必须要先将jemter的HTTP代理服务点击【启动】即可

    3、录制脚本时,上传商品图片提示‘ 上传失败’,或者一直是加载中,无法提交

          是因为设置了代理。需要将代理关闭,然后将firefox的手动代理关闭。将商品全部填写信息完整后,再次启动jemter的HTTP代理服务,同时将firefox的手动代理选中

    展开全文
  • 做一个微信小程序分享图片海报的功能,需要将海报图片保存下来,在保存图片时报异常如下 fail Error: unable to verify the first certificate 原因是证书链不完整或者是签名方式不对 解决方法 第一步 检测域名...

    做一个微信小程序分享图片海报的功能,需要将海报图片保存下来,在保存图片时报异常如下

    fail Error: unable to verify the first certificate
    

    在这里插入图片描述

    原因是证书链不完整或者是签名方式不对

    解决方法

    第一步 检测域名配置证书 点击这里查看
    我的检测结果如下:
    在这里插入图片描述
    PCI DSS 不合格,需要进行修复。

    第二步 进行修复 点击这里查询

    在这里插入图片描述

    展开全文
  • 点击购买证书,按照图片右侧选项选择个人免费(反正价格是0.00元的就对了) 支付订单 支付成功,前往证书控制台 点击证书申请 填写证书申请,CSR生成方式选择系统生成 验证,没问题的话大概半小时左右就...

    阿里云Nginx配置ssl证书 与 Http转Https

    因域名需要使用https访问,决定申请阿里云免费SSL证书并使用nginx配置http强制跳转https。


    • 步骤一

    证书申请

    登录阿里云官网,在搜索栏搜索SSL证书(应用安全)

    在这里插入图片描述


    点击购买证书,按照图片右侧选项选择个人免费(反正价格是0.00元的就对了)

    在这里插入图片描述


    支付订单

    在这里插入图片描述


    支付成功,前往证书控制台

    在这里插入图片描述


    点击证书申请

    在这里插入图片描述


    填写证书申请,CSR生成方式选择系统生成

    在这里插入图片描述


    验证,没问题的话大概半小时左右就收到已签发邮件了

    在这里插入图片描述


    证书已签发,点击下载

    在这里插入图片描述


    根据自己服务器类型选择下载,由于我的是Nginx,所以选择Nginx下载

    在这里插入图片描述


    • 步骤二

    Nginx证书配置

    Nginx中进行配置

    1. 下载并安装nginx(博主的是内置的Nginx,所以不用下载)

    1. 进入/etc/nginx/目录下,nginx安装目录下新建cert文件夹,将下载的证书解压放在/etc/nginx/cert目录下
    cd /etc/nginx/
    mkdir cert
    

    1. 进入nginx.conf文件中,编辑配置文件
    vim nginx.conf
    
    

    1. 在http中添加server,做反向代理按下面配置
            server{
                listen 80;
                #重定向跳转https
                return 301  https://localhost$request_uri;  #localhost修改为你的域名
            }
    
            server {
                listen 443 ssl;
                server_name localhost;  # localhost修改为您证书绑定的域名。
                ssl on;
    
                #root html;
                #index index.html index.htm;
    
                ssl_certificate cert/domain_name.pem;   #将domain_name.pem替换成您证书的文件名。
                ssl_certificate_key cert/domain_name.key;   #将domain_name.key替换成您证书的密钥文件名。
                ssl_session_timeout 5m;
                ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;  #使用此加密套件。
                ssl_protocols TLSv1 TLSv1.1 TLSv1.2;   #使用该协议进行配置。
                ssl_prefer_server_ciphers on;
                location / {
                    proxy_pass   http://127.0.0.1:8090;  #选填你的端口号
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_set_header Host $host;
                    proxy_set_header Upgrade-Insecure-Requests 1;
                    proxy_set_header X-Forwarded-Proto https;
    
                }
            }
    

    注意:下面这两条是导入默认页面配置,如果不注释掉则会默认跳转默认页面(之前因为没看见找了几个小时!!!😭)

     #include /etc/nginx/conf.d/*.conf;
     #include /etc/nginx/sites-enabled/*;
    

    1. 按Esc进入命令模式保存并退出
    :wq
    

    • 步骤三

    重启Nginx

    仅仅配置是不行的,还需要重新启动一下,这样子才能让我们的配置生效。

    nginx -s reload
    

    • 步骤四

    刷新页面

    在这里插入图片描述

    成功!!!😄
    即使访问的是http也会重定向变成https!

    tips:你的鼓励是博主最大的动力!😃

    转载自:https://tonylsl.top/2020/11/14/blog01

    展开全文
  • 1.最近公司上项目,其中有一个小栏目 是查询身份证的,就是输入身份证码和姓名返回你的地址和图片的这种,也就是公安部全国公民身份信息系统(NCIIS)不知道 有朋友写过没有,我是第一次,中间有几个问题第一个难题是...

    阅读全文并下载例子:http://www.cckan.net/forum.php?mod=viewthread&tid=213

    1.最近公司上项目,其中有一个小栏目 是查询身份证的,就是输入身份证码和姓名返回你的地址和图片的这种,也就是公安部全国公民身份信息系统(NCIIS)不知道 有朋友写过没有,我是第一次,中间有几个问题第一个难题是这样的,要验证证书,当时给文档的时候只有一个地址,也只有安装上了证书文件才能访问,基本的方法是这样的

          按上面写的把官方提共的地方输入到地址栏里,然后回车,然后会出现这个对话框,我们只要单击查看证书,就行了,在后面出现的界面 里单击安装就可以了

    如果要导出则选择“复制到文件” ==下一步  “Base64编码x.509 (.cer)(s)”选择这一项下一步完成就OK了。

         然后把你的证书文件复制到一个位置方便使用。文件名假设为tingting.cer(cer表示证书文件);

        像这样的程序一般只提共Java版的代码,那我们c#的怎么办呢,哎,不过经过今天下午的努力总算是出了,现在给大家分享一下经验;

         看Java的代码不太明白 ,不过也能知道一些,现在是Wsdl文件要怎么得到呢?我是这样写的

       

    代码
    //请求的地址
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.cnblogs.com/sufei");

                
    //创建证书文件
                X509Certificate objx509 = new X509Certificate(Application.StartupPath + "\\tingting.cer");

                
    //添加到请求里
                request.ClientCertificates.Add(objx509);

                
    //User-AgentHTTP标头的值
                request.UserAgent = "Client Cert Sample";
                request.Method 
    = "POST";

                
    //读返回的流
                StreamReader reader = new StreamReader(request.GetResponse().GetResponseStream());

                
    //把得到的WSDL文件放到一个richTextBox1
                this.richTextBox1.Text = reader.ReadToEnd();

     

     Application.StartupPath + "tingting.cer/"  这里就是我们刚才导出的证书文件的地址,当然我们在实际应用中要写成自己的才行;

    request.UserAgent = "Client Cert Sample"; User-AgentHTTP标头的值这个可以参考这里  http://support.microsoft.com/kb/895971

     

    我直接把全部的代码拿下来吧,方便以后查询

     

    代码
    当 Web 服务器需要一个使用 HttpWebRequest 和 HttpWebResponse 类时,您可以发送客户端证书。 若要获取用于通过使用 HttpWebRequest 类发送客户端证书的证书,使用下列方法之一: 
    方法 
    1
    使用 x509 证书 类来读取从.cer 文件的证书,然后将 ClientCertificates 属性设置。
    方法 
    2
    使用 CryptoAPI 调用来从证书存储获得证书,然后将 x509 证书 类设置为接收从证书存储区的证书。 然后,您可以设置 ClientCertificates 属性。 
    回到顶端
    发送客户端证书的要求
    可与 ASP.NET 应用程序时确保完成以下要求: 
    LOCAL_MACHINE 注册表配置单元中并不在 CURRENT_USER 注册表配置单元中,必须安装客户端证书。 若要确认客户端证书的安装位置,请按照下列步骤操作: 
    单击 开始、 单击 运行,键入 mmc,然后单击 确定。
    在 文件 菜单上单击 添加
    /删除管理单元。
    在 添加
    /删除管理单元 对话框中单击 添加。
    在 添加独立管理单元 对话框中单击 证书,然后单击 添加。
    在 证书管理单元 对话框中单击 计算机帐户,然后单击 下一步
    在 选择计算机 对话框中单击 完成。
    在 添加独立管理单元 对话框中单击 关闭,然后单击 确定。
    展开 证书 (本地计算机),展开 个人,然后单击 证书。
    在右窗格中应列出客户端证书。
    您必须授予 ASP.NET 用户客户端证书的私钥的帐户权限。 若要为 ASP.NET 用户授予客户端证书的私钥的帐户权限,使用 WinHttpCertCfg.exe 工具。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 
    823193  (http://support.microsoft.com/kb/823193/ ) 如何获得 Windows HTTP 5.1 证书和跟踪工具 
    有关如何使用此工具,请访问下面的 Microsoft 开发人员网络 (MSDN) 的网站的详细信息:
    WinHttpCertCfg.exe,证书配置工具 http:
    //msdn2.microsoft.com/en-us/library/aa384088.aspx (http://msdn2.microsoft.com/en-us/library/aa384088.aspx
    回到顶端
    使用.cer 文件
    方法 
    1 是易于使用,但方法要求您具有一个.cer 文件。 如果您没有安装的.cer 文件,使用 Microsoft Internet 资源管理器导出.cer 文件。

    下列源代码介绍如何获取证书从一个.cer 文件您可以使用 HttpWebRequest 
    class.
    //Uncomment the following code if you need a proxy. The boolean true is used to bypass the local address.
    //WebProxy proxyObject = new WebProxy("Your Proxy value",true); 
    //GlobalProxySelection.Select = proxyObject;

    // Obtain the certificate. 
    try
    {
        
    //You must change the path to point to your .cer file location. 
        X509Certificate Cert = X509Certificate.CreateFromCertFile("C:\\mycert.cer");
        
    // Handle any certificate errors on the certificate from the server.
        ServicePointManager.CertificatePolicy = new CertPolicy();
        
    // You must change the URL to point to your Web server.
        HttpWebRequest Request = (HttpWebRequest)WebRequest.Create("https://YourServer/sample.asp");
        Request.ClientCertificates.Add(Cert);
        Request.UserAgent 
    = "Client Cert Sample";
        Request.Method 
    = "GET";
        HttpWebResponse Response 
    = (HttpWebResponse)Request.GetResponse();
        
    // Print the repsonse headers.
        Console.WriteLine("{0}",Response.Headers);
        Console.WriteLine();
        
    // Get the certificate data.
        StreamReader sr = new StreamReader(Response.GetResponseStream(), Encoding.Default);
        
    int count;
        
    char [] ReadBuf = new char[1024];
        
    do
        {
            count 
    = sr.Read(ReadBuf, 01024);
            
    if (0 != count)
            {
                Console.WriteLine(
    new string(ReadBuf));
            }
                            
        }
    while(count > 0);
    }
    catch(Exception e)
    {
        Console.WriteLine(e.Message);
    }
        

    //Implement the ICertificatePolicy interface.
    class CertPolicy: ICertificatePolicy
    {
        
    public bool CheckValidationResult(ServicePoint srvPoint, 
    X509Certificate certificate, WebRequest request, 
    int certificateProblem)
        {
            
    // You can do your own certificate checking.
            
    // You can obtain the error values from WinError.h.

            
    // Return true so that any certificate will work with this sample.
            return true;
        }
    }



    使用 CryptoAPI 调用
    如果您必须获取该证书从证书存储区,CryptoAPI 函数用于在获取该证书,然后将其存储在 x509 证书 类对象。 X509CertificateCollection 类枚举存储区中的所有证书,然后将其置于 X509CertificateCollection 类对象中。 

    如果想获得特定的证书,必须更改类代码,以使用 CertFindCertificateInStore 函数获取特定的证书。 Wincrypt.h 的文件中声明该函数。 鎴栬 € 咃,您可以枚举 X509CertificateCollection 函数,以查找所需的证书。 

    下面的代码示例使用从 CertEnumCertificatesInStore 函数返回集合中的第一个证书 
    using System;
    using System.Net;
    using System.IO;
    using System.Text;
    using System.Security.Cryptography;
    using System.Security.Cryptography.X509Certificates;
    using System.Runtime.InteropServices;

    namespace SelectClientCert
    {
        
    /// Sample that describes how how to select client cetificate and send it to the server.

        
    class MyCerts{

            
    private static int CERT_STORE_PROV_SYSTEM = 10;
            
    private static int CERT_SYSTEM_STORE_CURRENT_USER = (1 << 16);
            
    ///private static int CERT_SYSTEM_STORE_LOCAL_MACHINE = (2 << 16);

            [DllImport("CRYPT32", EntryPoint="CertOpenStore", CharSet=CharSet.Unicode, SetLastError=true)]
            
    public static extern IntPtr CertOpenStore(
                
    int storeProvider, int encodingType,
                
    int hcryptProv, int flags, string pvPara);

            [DllImport(
    "CRYPT32", EntryPoint="CertEnumCertificatesInStore", CharSet=CharSet.Unicode, SetLastError=true)]
            
    public static extern IntPtr CertEnumCertificatesInStore(
                IntPtr storeProvider,
                IntPtr prevCertContext);

            [DllImport(
    "CRYPT32", EntryPoint="CertCloseStore", CharSet=CharSet.Unicode, SetLastError=true)]
            
    public static extern bool CertCloseStore(
                IntPtr storeProvider,
                
    int flags);
            
            X509CertificateCollection m_certs;

            
    public MyCerts(){
                m_certs 
    = new X509CertificateCollection();
            }

            
    public int Init()
            {
                IntPtr storeHandle;
                storeHandle 
    = CertOpenStore(CERT_STORE_PROV_SYSTEM, 00, CERT_SYSTEM_STORE_CURRENT_USER, "MY");
                IntPtr currentCertContext;
                currentCertContext 
    = CertEnumCertificatesInStore(storeHandle, (IntPtr)0);
                
    int i = 0;
                
    while (currentCertContext != (IntPtr)0
                {
                    m_certs.Insert(i
    ++new X509Certificate(currentCertContext));
                    currentCertContext 
    = CertEnumCertificatesInStore(storeHandle, currentCertContext);
                }
                CertCloseStore(storeHandle, 
    0);

                
    return m_certs.Count;
            }
            
            
    public X509Certificate this [int index]
            {
                
    get 
                {
                    
    // Check the index limits.
                    if (index < 0 || index > m_certs.Count)
                        
    return null;
                    
    else
                        
    return m_certs[index];
                }
            }
        };
        
    class MyHttpResource
        {
            String m_url;

            
    public MyHttpResource(string url){
                m_url 
    = url;
            }

            
    public void GetFile(){

                HttpWebResponse  result 
    = null;

                
    try{
                
                    HttpWebRequest req 
    = (HttpWebRequest)WebRequest.Create(m_url);
                    req.Credentials  
    = CredentialCache.DefaultCredentials;

                    
    ///Method1
                    //req.ClientCertificates.Add(X509Certificate.CreateFromCertFile("D:\\Temp\\cert\\c1.cer"));
            
                    
    ///Method2
                    
    ///Uses interop services
                    MyCerts mycert = new MyCerts();
                    
    if(mycert.Init() > 0)
                        req.ClientCertificates.Add(mycert[
    0]);

                    result 
    = (HttpWebResponse)req.GetResponse();
                    
                    Stream ReceiveStream 
    = result.GetResponseStream();
                    Encoding encode 
    = System.Text.Encoding.GetEncoding("utf-8");

                    StreamReader sr 
    = new StreamReader( ReceiveStream, encode );
                    Console.WriteLine(
    "\r\nResponse stream received");

                    Char[] read 
    = new Char[256];
                    
    int count = sr.Read( read, 0256 );

                    Console.WriteLine(
    "HTTP Response...\r\n");
                    
    while (count > 0
                    {
                        String str 
    = new String(read, 0, count);
                        Console.Write(str);
                        count 
    = sr.Read(read, 0256);
                    }

                } 
                
    catch(WebException e) 
                {
                
                    Console.WriteLine(
    "\r\nError:");
                    
    #if (DEBUG)
                        Console.WriteLine(e.ToString());
                    
    #else        
                        Console.WriteLine(e.Message);                 
                    
    #endif

                } 
                
    finally 
                {
                    
    if ( result != null ) {
                        result.Close();
                    }
                }
                    
            }
        
        }

        
    class CertSample
        {
            
    static void Main(string[] args)
            {
                
    try
                {
                    
    if (args.Length < 1)
                    {
                        Console.WriteLine(
    "No url is entered to download, returning.\n");
                        Console.WriteLine(
    "Usage: CertSample <urltoget>\n");
                        Console.WriteLine(
    "  e.g: CertSample https://servername \n"); 

                        
    return;
                    }

                    MyHttpResource hr 
    = new MyHttpResource(args[0]);
                    hr.GetFile();
                }
                
    catch(Exception e)
                {
                    Console.WriteLine(e.ToString());
                }
                
    return;
            }
        }
    }



    参考有关详细信息请访问下面的 Microsoft 开发网络 (MSDN) 网站: x509 证书类http:
    //msdn2.microsoft.com/en-us/...有关详细信息请访问下面的 Microsoft 开发网络 (MSDN) 

    x509 证书类
    http:
    //msdn2.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509certificate(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509certificate(vs.71).aspx) 

     

     

    我们接着说,WSDL文件是得如下

     

    代码
    <?xml version="1.0" encoding="UTF-8"?>
    <wsdl:definitions targetNamespace="https://www.cnblogs.com/sufei" xmlns:tns="https://api.nciic.org.cn/nciicGetCondition" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://https://www.cnblogs.com/sufei2003/05/soap-envelope" xmlns:xsd="http://https://www.cnblogs.com/sufei2001/XMLSchema" xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soapenc12="http://https://www.cnblogs.com/sufei2003/05/soap-encoding" xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
      
    <wsdl:types>
    <xsd:schema xmlns:xsd="http://https://www.cnblogs.com/sufei2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="https://api.nciic.org.cn/nciicGetCondition">
    <xsd:element name="nciicDiscern">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicDiscernResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCheckChina">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCheckChinaResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicGetCondition">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicGetConditionResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicExactSearch">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicExactSearchResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCourt">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCourtResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicBirthplaceCompare">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicBirthplaceCompareResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicAddrExactSearch">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicAddrExactSearchResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCheck">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCheckResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCompare">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCompareResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCombineSearch">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="inLicense" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="inConditions" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="nciicCombineSearchResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
      
    </wsdl:types>
      
    <wsdl:message name="nciicCombineSearchResponse">
        
    <wsdl:part name="parameters" element="tns:nciicCombineSearchResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCheckChinaRequest">
        
    <wsdl:part name="parameters" element="tns:nciicCheckChina">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicBirthplaceCompareResponse">
        
    <wsdl:part name="parameters" element="tns:nciicBirthplaceCompareResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicAddrExactSearchRequest">
        
    <wsdl:part name="parameters" element="tns:nciicAddrExactSearch">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCheckRequest">
        
    <wsdl:part name="parameters" element="tns:nciicCheck">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicExactSearchResponse">
        
    <wsdl:part name="parameters" element="tns:nciicExactSearchResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCompareResponse">
        
    <wsdl:part name="parameters" element="tns:nciicCompareResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCheckResponse">
        
    <wsdl:part name="parameters" element="tns:nciicCheckResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCourtRequest">
        
    <wsdl:part name="parameters" element="tns:nciicCourt">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicExactSearchRequest">
        
    <wsdl:part name="parameters" element="tns:nciicExactSearch">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicBirthplaceCompareRequest">
        
    <wsdl:part name="parameters" element="tns:nciicBirthplaceCompare">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicAddrExactSearchResponse">
        
    <wsdl:part name="parameters" element="tns:nciicAddrExactSearchResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCombineSearchRequest">
        
    <wsdl:part name="parameters" element="tns:nciicCombineSearch">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicDiscernRequest">
        
    <wsdl:part name="parameters" element="tns:nciicDiscern">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCourtResponse">
        
    <wsdl:part name="parameters" element="tns:nciicCourtResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCompareRequest">
        
    <wsdl:part name="parameters" element="tns:nciicCompare">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicDiscernResponse">
        
    <wsdl:part name="parameters" element="tns:nciicDiscernResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicGetConditionRequest">
        
    <wsdl:part name="parameters" element="tns:nciicGetCondition">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicGetConditionResponse">
        
    <wsdl:part name="parameters" element="tns:nciicGetConditionResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:message name="nciicCheckChinaResponse">
        
    <wsdl:part name="parameters" element="tns:nciicCheckChinaResponse">
        
    </wsdl:part>
      
    </wsdl:message>
      
    <wsdl:portType name="nciicGetConditionPortType">
        
    <wsdl:operation name="nciicDiscern">
          
    <wsdl:input name="nciicDiscernRequest" message="tns:nciicDiscernRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicDiscernResponse" message="tns:nciicDiscernResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCheckChina">
          
    <wsdl:input name="nciicCheckChinaRequest" message="tns:nciicCheckChinaRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicCheckChinaResponse" message="tns:nciicCheckChinaResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicGetCondition">
          
    <wsdl:input name="nciicGetConditionRequest" message="tns:nciicGetConditionRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicGetConditionResponse" message="tns:nciicGetConditionResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicExactSearch">
          
    <wsdl:input name="nciicExactSearchRequest" message="tns:nciicExactSearchRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicExactSearchResponse" message="tns:nciicExactSearchResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCourt">
          
    <wsdl:input name="nciicCourtRequest" message="tns:nciicCourtRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicCourtResponse" message="tns:nciicCourtResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicBirthplaceCompare">
          
    <wsdl:input name="nciicBirthplaceCompareRequest" message="tns:nciicBirthplaceCompareRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicBirthplaceCompareResponse" message="tns:nciicBirthplaceCompareResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicAddrExactSearch">
          
    <wsdl:input name="nciicAddrExactSearchRequest" message="tns:nciicAddrExactSearchRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicAddrExactSearchResponse" message="tns:nciicAddrExactSearchResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCheck">
          
    <wsdl:input name="nciicCheckRequest" message="tns:nciicCheckRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicCheckResponse" message="tns:nciicCheckResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCompare">
          
    <wsdl:input name="nciicCompareRequest" message="tns:nciicCompareRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicCompareResponse" message="tns:nciicCompareResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCombineSearch">
          
    <wsdl:input name="nciicCombineSearchRequest" message="tns:nciicCombineSearchRequest">
        
    </wsdl:input>
          
    <wsdl:output name="nciicCombineSearchResponse" message="tns:nciicCombineSearchResponse">
        
    </wsdl:output>
        
    </wsdl:operation>
      
    </wsdl:portType>
      
    <wsdl:binding name="nciicGetConditionHttpBinding" type="tns:nciicGetConditionPortType">
        
    <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        
    <wsdl:operation name="nciicDiscern">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicDiscernRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicDiscernResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCheckChina">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicCheckChinaRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicCheckChinaResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicGetCondition">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicGetConditionRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicGetConditionResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicExactSearch">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicExactSearchRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicExactSearchResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCourt">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicCourtRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicCourtResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicBirthplaceCompare">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicBirthplaceCompareRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicBirthplaceCompareResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicAddrExactSearch">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicAddrExactSearchRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicAddrExactSearchResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCheck">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicCheckRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicCheckResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCompare">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicCompareRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicCompareResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
        
    <wsdl:operation name="nciicCombineSearch">
          
    <wsdlsoap:operation soapAction=""/>
          
    <wsdl:input name="nciicCombineSearchRequest">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:input>
          
    <wsdl:output name="nciicCombineSearchResponse">
            
    <wsdlsoap:body use="literal"/>
          
    </wsdl:output>
        
    </wsdl:operation>
      
    </wsdl:binding>
      
    <wsdl:service name="nciicGetCondition">
        
    <wsdl:port name="nciicGetConditionHttpPort" binding="tns:nciicGetConditionHttpBinding">
          
    <wsdlsoap:address location="http://api.nciic.org.cn/nciic_ws/services/nciicGetCondition"/>
        
    </wsdl:port>
      
    </wsdl:service>
    </wsdl:definitions>

     

     

     

     

    可是我们想一下这是一个Xml文件,我们应该怎么使用他呢,如果 是Webservce相信大家都 知道 怎么使用,直接添加引用就可以,但这里是一个Wsdl的XMl文件,我们得把他转化成一个类文件才行,

    方法很简单,这是在我知道 了之后才这样讲的,呵呵

    利用wsdl.exe生成webservice代理类:

    根据提供的wsdl生成webservice代理类

    1、开始->程序->Visual Studio 2008 命令提示

    2、输入如下红色标记部分

    D:\Program Files\Microsoft Visual Studio 8\VC>wsdl /language:c# /n:TestDemo /out:d:\text\TestService.cs D:\text\TestService.wsdl

    在d:/text下就会产生一个TestService.cs 文件

    注意:D:\text\TestService.wsdl 是wsdl路径,可以是url路径:https://www.cnblogs.com/sufei/?wsdl

    如果 你想知道WSDL文件是怎么使用的话,直接写WSDL回车就可以,会出显所有的说明,呵呵

     

     

    还有一个方法更方便

    首先打开Visual Studio 2008,选择菜单"工具"-"外部工具"打开外部工具对话框,如图

    ,单击“添加”按钮添加新工具,然后在“标题”行中输入"WSDL生成代理类","命令"行中输入"C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\wsdl.exe"(wsdl.exe文件的路径),"参数"行中输入"/l:cs  /out:", 单击"初始目录"行右边的三角按钮选择"项目录",勾选"使用输出窗口"和"提示输入参数",然后确定保存。

         再打开菜单"工具"可以看到多了一个"WSDL生成代理类"菜单,这时先选定一个存放生成的代理类的文件夹(必须位于并且包含于当前解决方案中),然后单击"WSDL生成代理类"菜单,弹出如下对话框,然后你只需在"/l:cs  /out:"后面空一格(必须空一格)再粘贴WebService文件的http地址如https://www.cnblogs.com/sufei?wsdl,单击"确定"看看发生了什么?是的,输出窗口会显示生成了一个类及其存放的位置,看看是不是你选定的文件夹,找到这个路径看看是不是有一个类,你会发现这个类跟上面使用命令行生成的类一模一样,个人觉得这样操作起来更简单一点。

     

     这段是来自己http://blog.sina.com.cn/s/blog_48964b120100fz14.html 在这里谢谢了

     

    到这里我们应该好办多了,生成的类文件里会包括 方法使用和怎么样和服务器沟通,我们只要调用 方法就要可以了,

    类文件如下

    代码
    //------------------------------------------------------------------------------
    // <auto-generated>
    //     此代码由工具生成。
    //     运行库版本:2.0.50727.1873
    //
    //     对此文件的更改可能会导致不正确的行为,并且如果
    //     重新生成代码,这些更改将会丢失。
    // </auto-generated>
    //------------------------------------------------------------------------------

    // 
    // 此源代码由 wsdl 自动生成, Version=2.0.50727.1432。
    // 
    namespace WSDLServices
    {
        
    using System.Diagnostics;
        
    using System.Web.Services;
        
    using System.ComponentModel;
        
    using System.Web.Services.Protocols;
        
    using System;
        
    using System.Xml.Serialization;
        
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        [System.Web.Services.WebServiceBindingAttribute(Name
    ="nciicGetConditionHttpBinding", Namespace="https://http://www.cnblogs.com/sufei/nciicGetCondition")]
        
    public partial class nciicGetCondition : System.Web.Services.Protocols.SoapHttpClientProtocol {
            
            
    private System.Threading.SendOrPostCallback nciicDiscernOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback nciicCheckChinaOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback CallnciicGetConditionOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback nciicExactSearchOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback nciicCourtOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback nciicBirthplaceCompareOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback nciicAddrExactSearchOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback nciicCheckOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback nciicCompareOperationCompleted;
            
            
    private System.Threading.SendOrPostCallback nciicCombineSearchOperationCompleted;
            
            
    /// <remarks/>
            public nciicGetCondition() {
                
    this.Url = "http://http://www.cnblogs.com/sufei/nciic_ws/services/nciicGetCondition";
            }
            
            
    /// <remarks/>
            public event nciicDiscernCompletedEventHandler nciicDiscernCompleted;
            
            
    /// <remarks/>
            public event nciicCheckChinaCompletedEventHandler nciicCheckChinaCompleted;
            
            
    /// <remarks/>
            public event CallnciicGetConditionCompletedEventHandler CallnciicGetConditionCompleted;
            
            
    /// <remarks/>
            public event nciicExactSearchCompletedEventHandler nciicExactSearchCompleted;
            
            
    /// <remarks/>
            public event nciicCourtCompletedEventHandler nciicCourtCompleted;
            
            
    /// <remarks/>
            public event nciicBirthplaceCompareCompletedEventHandler nciicBirthplaceCompareCompleted;
            
            
    /// <remarks/>
            public event nciicAddrExactSearchCompletedEventHandler nciicAddrExactSearchCompleted;
            
            
    /// <remarks/>
            public event nciicCheckCompletedEventHandler nciicCheckCompleted;
            
            
    /// <remarks/>
            public event nciicCompareCompletedEventHandler nciicCompareCompleted;
            
            
    /// <remarks/>
            public event nciicCombineSearchCompletedEventHandler nciicCombineSearchCompleted;
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicDiscern([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicDiscern"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicDiscern(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicDiscern"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicDiscern(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicDiscernAsync(string inLicense, string inConditions) {
                
    this.nciicDiscernAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicDiscernAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicDiscernOperationCompleted == null)) {
                    
    this.nciicDiscernOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicDiscernOperationCompleted);
                }
                
    this.InvokeAsync("nciicDiscern"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicDiscernOperationCompleted, userState);
            }
            
            
    private void OnnciicDiscernOperationCompleted(object arg) {
                
    if ((this.nciicDiscernCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicDiscernCompleted(thisnew nciicDiscernCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicCheckChina([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicCheckChina"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicCheckChina(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicCheckChina"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicCheckChina(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicCheckChinaAsync(string inLicense, string inConditions) {
                
    this.nciicCheckChinaAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicCheckChinaAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicCheckChinaOperationCompleted == null)) {
                    
    this.nciicCheckChinaOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicCheckChinaOperationCompleted);
                }
                
    this.InvokeAsync("nciicCheckChina"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicCheckChinaOperationCompleted, userState);
            }
            
            
    private void OnnciicCheckChinaOperationCompleted(object arg) {
                
    if ((this.nciicCheckChinaCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicCheckChinaCompleted(thisnew nciicCheckChinaCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestElementName="nciicGetCondition", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseElementName="nciicGetConditionResponse", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string CallnciicGetCondition([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense) {
                
    object[] results = this.Invoke("CallnciicGetCondition"new object[] {
                            inLicense});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginCallnciicGetCondition(string inLicense, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("CallnciicGetCondition"new object[] {
                            inLicense}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndCallnciicGetCondition(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void CallnciicGetConditionAsync(string inLicense) {
                
    this.CallnciicGetConditionAsync(inLicense, null);
            }
            
            
    /// <remarks/>
            public void CallnciicGetConditionAsync(string inLicense, object userState) {
                
    if ((this.CallnciicGetConditionOperationCompleted == null)) {
                    
    this.CallnciicGetConditionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCallnciicGetConditionOperationCompleted);
                }
                
    this.InvokeAsync("CallnciicGetCondition"new object[] {
                            inLicense}, 
    this.CallnciicGetConditionOperationCompleted, userState);
            }
            
            
    private void OnCallnciicGetConditionOperationCompleted(object arg) {
                
    if ((this.CallnciicGetConditionCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.CallnciicGetConditionCompleted(thisnew CallnciicGetConditionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicExactSearch([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicExactSearch"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicExactSearch(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicExactSearch"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicExactSearch(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicExactSearchAsync(string inLicense, string inConditions) {
                
    this.nciicExactSearchAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicExactSearchAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicExactSearchOperationCompleted == null)) {
                    
    this.nciicExactSearchOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicExactSearchOperationCompleted);
                }
                
    this.InvokeAsync("nciicExactSearch"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicExactSearchOperationCompleted, userState);
            }
            
            
    private void OnnciicExactSearchOperationCompleted(object arg) {
                
    if ((this.nciicExactSearchCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicExactSearchCompleted(thisnew nciicExactSearchCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicCourt([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicCourt"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicCourt(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicCourt"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicCourt(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicCourtAsync(string inLicense, string inConditions) {
                
    this.nciicCourtAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicCourtAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicCourtOperationCompleted == null)) {
                    
    this.nciicCourtOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicCourtOperationCompleted);
                }
                
    this.InvokeAsync("nciicCourt"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicCourtOperationCompleted, userState);
            }
            
            
    private void OnnciicCourtOperationCompleted(object arg) {
                
    if ((this.nciicCourtCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicCourtCompleted(thisnew nciicCourtCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicBirthplaceCompare([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicBirthplaceCompare"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicBirthplaceCompare(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicBirthplaceCompare"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicBirthplaceCompare(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicBirthplaceCompareAsync(string inLicense, string inConditions) {
                
    this.nciicBirthplaceCompareAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicBirthplaceCompareAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicBirthplaceCompareOperationCompleted == null)) {
                    
    this.nciicBirthplaceCompareOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicBirthplaceCompareOperationCompleted);
                }
                
    this.InvokeAsync("nciicBirthplaceCompare"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicBirthplaceCompareOperationCompleted, userState);
            }
            
            
    private void OnnciicBirthplaceCompareOperationCompleted(object arg) {
                
    if ((this.nciicBirthplaceCompareCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicBirthplaceCompareCompleted(thisnew nciicBirthplaceCompareCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicAddrExactSearch([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicAddrExactSearch"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicAddrExactSearch(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicAddrExactSearch"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicAddrExactSearch(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicAddrExactSearchAsync(string inLicense, string inConditions) {
                
    this.nciicAddrExactSearchAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicAddrExactSearchAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicAddrExactSearchOperationCompleted == null)) {
                    
    this.nciicAddrExactSearchOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicAddrExactSearchOperationCompleted);
                }
                
    this.InvokeAsync("nciicAddrExactSearch"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicAddrExactSearchOperationCompleted, userState);
            }
            
            
    private void OnnciicAddrExactSearchOperationCompleted(object arg) {
                
    if ((this.nciicAddrExactSearchCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicAddrExactSearchCompleted(thisnew nciicAddrExactSearchCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped
                )]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicCheck([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicCheck"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicCheck(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicCheck"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicCheck(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicCheckAsync(string inLicense, string inConditions) {
                
    this.nciicCheckAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicCheckAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicCheckOperationCompleted == null)) {
                    
    this.nciicCheckOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicCheckOperationCompleted);
                }
                
    this.InvokeAsync("nciicCheck"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicCheckOperationCompleted, userState);
            }
            
            
    private void OnnciicCheckOperationCompleted(object arg) {
                
    if ((this.nciicCheckCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicCheckCompleted(thisnew nciicCheckCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicCompare([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicCompare"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicCompare(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicCompare"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicCompare(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicCompareAsync(string inLicense, string inConditions) {
                
    this.nciicCompareAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicCompareAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicCompareOperationCompleted == null)) {
                    
    this.nciicCompareOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicCompareOperationCompleted);
                }
                
    this.InvokeAsync("nciicCompare"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicCompareOperationCompleted, userState);
            }
            
            
    private void OnnciicCompareOperationCompleted(object arg) {
                
    if ((this.nciicCompareCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicCompareCompleted(thisnew nciicCompareCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", ResponseNamespace="https://http://www.cnblogs.com/sufei/nciicGetCondition", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [
    return: System.Xml.Serialization.XmlElementAttribute("out", IsNullable=true)]
            
    public string nciicCombineSearch([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inLicense, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] string inConditions) {
                
    object[] results = this.Invoke("nciicCombineSearch"new object[] {
                            inLicense,
                            inConditions});
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public System.IAsyncResult BeginnciicCombineSearch(string inLicense, string inConditions, System.AsyncCallback callback, object asyncState) {
                
    return this.BeginInvoke("nciicCombineSearch"new object[] {
                            inLicense,
                            inConditions}, callback, asyncState);
            }
            
            
    /// <remarks/>
            public string EndnciicCombineSearch(System.IAsyncResult asyncResult) {
                
    object[] results = this.EndInvoke(asyncResult);
                
    return ((string)(results[0]));
            }
            
            
    /// <remarks/>
            public void nciicCombineSearchAsync(string inLicense, string inConditions) {
                
    this.nciicCombineSearchAsync(inLicense, inConditions, null);
            }
            
            
    /// <remarks/>
            public void nciicCombineSearchAsync(string inLicense, string inConditions, object userState) {
                
    if ((this.nciicCombineSearchOperationCompleted == null)) {
                    
    this.nciicCombineSearchOperationCompleted = new System.Threading.SendOrPostCallback(this.OnnciicCombineSearchOperationCompleted);
                }
                
    this.InvokeAsync("nciicCombineSearch"new object[] {
                            inLicense,
                            inConditions}, 
    this.nciicCombineSearchOperationCompleted, userState);
            }
            
            
    private void OnnciicCombineSearchOperationCompleted(object arg) {
                
    if ((this.nciicCombineSearchCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs 
    = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    
    this.nciicCombineSearchCompleted(thisnew nciicCombineSearchCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
            
            
    /// <remarks/>
            public new void CancelAsync(object userState) {
                
    base.CancelAsync(userState);
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicDiscernCompletedEventHandler(object sender, nciicDiscernCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicDiscernCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicDiscernCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicCheckChinaCompletedEventHandler(object sender, nciicCheckChinaCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicCheckChinaCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicCheckChinaCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void CallnciicGetConditionCompletedEventHandler(object sender, CallnciicGetConditionCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class CallnciicGetConditionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal CallnciicGetConditionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicExactSearchCompletedEventHandler(object sender, nciicExactSearchCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicExactSearchCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicExactSearchCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicCourtCompletedEventHandler(object sender, nciicCourtCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicCourtCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicCourtCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicBirthplaceCompareCompletedEventHandler(object sender, nciicBirthplaceCompareCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicBirthplaceCompareCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicBirthplaceCompareCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicAddrExactSearchCompletedEventHandler(object sender, nciicAddrExactSearchCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicAddrExactSearchCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicAddrExactSearchCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicCheckCompletedEventHandler(object sender, nciicCheckCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicCheckCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicCheckCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicCompareCompletedEventHandler(object sender, nciicCompareCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicCompareCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicCompareCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        
    public delegate void nciicCombineSearchCompletedEventHandler(object sender, nciicCombineSearchCompletedEventArgs e);
        
        
    /// <remarks/>
        [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl""2.0.50727.1432")]
        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.ComponentModel.DesignerCategoryAttribute(
    "code")]
        
    public partial class nciicCombineSearchCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
            
            
    private object[] results;
            
            
    internal nciicCombineSearchCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                    
    base(exception, cancelled, userState) {
                
    this.results = results;
            }
            
            
    /// <remarks/>
            public string Result {
                
    get {
                    
    this.RaiseExceptionIfNecessary();
                    
    return ((string)(this.results[0]));
                }
            }
        }
    }

     

    有这里有这样一个问题,验证证书时可能会不通过,那我们可以让它回调验证,基本上就可以无视证书了,看我修改的代码就行了,有注释

    直接修改如下方法就行了,

     

            ///<remarks/>
    public nciicGetCondition()
    {
    this.Url = "http://api.nciic.org.cn/nciic_ws/services/nciicGetCondition";

    //验证服务器证书回调自动验证
    ServicePointManager.ServerCertificateValidationCallback += RemoteCertificateValidate;
    }
    //这个方法 是新加的直接添加进来就行了
    private static bool RemoteCertificateValidate(object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors error)
    {
    // trust any certificate!!!
    System.Console.WriteLine("Warning, trust any certificate");
    //为了通过证书验证,总是返回true
    return true;
    }

     

     

    有了这个类,最后一步就是怎么样来实现调取数据了,

     

    代码
     try
                {
                    
    //授权文件内容建议以后放在数据库或是文件里而且要加密
                    string inliance = @"文件内容";

                    
    //生成的WSDL类()
                    nciicGetCondition objText = new nciicGetCondition();

                    
    //基础URL建议加密和写在文件中
                    objText.Url = "https://www.cnblogs.com/sufei";

                    
    //编码
                    objText.RequestEncoding =  Encoding.UTF8;

                    
    //创建证书文件
                    X509Certificate objx509 = new X509Certificate(Application.StartupPath + "\\tingting.cer");
                    
                    
    //证书
                    objText.ClientCertificates.Add(objx509);

                    
    //方式可有可无
                    objText.UserAgent = "Client Cert Sample";

                    
    //读XML文件
                    string inConditions = File.ReadAllText(Application.StartupPath + "\\XMLFile1.xml");

                    
    //Text文件
                    this.richTextBox1.Text = objText.nciicCheck(inliance, inConditions);

                }
                
    catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }

     

     

     

    到这里我们已经和服务器沟通上了,把回的结果集的格式 跟文档中的一样,我们自己去解析就行了,这里为了保证公司的利益就不再多写了。,,,,,,,,,,,,,,

    转载于:https://www.cnblogs.com/sufei/archive/2010/03/14/https.html

    展开全文
  • 此服务器的证书无效。您可能正在连接到一个伪装成“45.127.129.8”的服务器,这会威胁到您的机密信息的安全。" UserInfo={NSLocalizedRecoverySuggestion=您仍要连接此服务器吗?, _...
  • 阅读全文:http://www.cckan.net/forum.php?mod=viewthread&tid=214 上次的文章http://www.cnblogs.com/sufei/archive/2010/03/14/https.html没有具体 说完,这里再加上一点,... 代码 ...//转图片的方法publ...
  • 文章目录Spider 03回顾目前反爬总结请求模块总结解析模块总结xpath表达式增量爬虫如何实现Chrome浏览器安装插件Spider 04笔记链家二手房案例(xpath)百度贴吧图片抓取requests.get()参数查询参数-paramsWeb客户端...
  • charles经常会进行手机上的网页抓包,比如去copy别人网站图片或脚本的时候o(∩_∩)o ;手机抓包的原理,和PC类似,手机依靠charles与服务端进行对话;目标:把手机的网络委托给charles进行代理;手机抓包设置,需要...
  • 1、准备工作 首先电脑安装 Charles(这个...[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HDNzSU7o-1611141374406)(https://raw.githubusercontent.com/aYangLi/image-folder/master/csnd/
  • 项目中通过okhttp请求RESTful接口,使用Httpclient来进行代理访问,目前都需要支持https的访问,证书文件路径已经提供,具体配置如下:   ps:亲测https访问是可以的,由于代码在公司内网,只能以图片方式展示 ...
  • 系统可建立完善 的代理机构库,支持二级分类管理,记录每个代理机构的中标情况等信息,可为每个代理机构设置多个资质信息,并可以为每个资质分别设置一张证书图片。支持从 已有Excel表格中导入代理机构信息、备份...
  • nginx代理tomcat,做了ssl,访问首页登录证书是绿色![图片说明](https://img-ask.csdn.net/upload/201811/10/1541837967_301093.png),进去后点写其他按钮就变灰色![图片说明]...
  • 导出这个是为了后续架设反向代理做准备。过程很简单,按照图片顺序进行就可以了。 密码随便输入,自己记得就好,到时候在Linux下转换时需要。 最后把上面的文件存放好,要传到Linux服务器上面...
  • charles经常会进行手机上的网页抓包,比如去copy别人网站图片或脚本的时候o(∩_∩)o ; 手机抓包的原理,和PC类似,手机依靠charles与服务端进行对话; 目标:把手机的网络委托给charles进行代理; 手机抓包设置,...
  • 微信小程序上传图片时候,弹出对话框“当前系统代理不是安全代理,是否信任”,这个是不是我服务器的https证书有问题呢?
  • 切换到https,勾选图片上的选项,会弹出安装证书的提示,一路点是或确定即可。 3. 重启fiddler,还是进入HTTPS选项,点击右侧的actions,点击Export Root Certificate to Desktop,这个时候证书生成在桌面上,...
  • 前面的按照这个链接做完之后 ...如果发现还是模拟器还是像图片这样 你就在你的搜索里面输入你的ip地址和端口号,然后按回车就回出现证书了,再点击证书下载,下载的时候模拟器都设置好开屏密码才可以保存证书。 ...
  • 写在前面的话 关于nginx和jetty之间的事儿是三少奶奶写的一个系列,每个...考虑到小程序的访问速度等问题,服务器端采用了jetty来部署小程序后台管理系统,采用nginx实现对后台请求的反向代理和小程序端对图片等静...
  • 自建银行服务器环境win7 32旗舰版,银行证书齐全,开发环境Mac/nginx/php。请求/响应时报错 ![图片说明](https://img-ask.csdn.net/upload/201511/25/1448420818_657766.png) 我检查过网络连接正常, ![图片...
  • 二、Mac端代理设置 2.1.启动Charles 2.2.Proxy-macOS Proxy:勾选表示本机代理,我只需要抓取手机端APP,因此去掉勾选 三、Mac端安装证书 3.1.根据图示选择安装证书 3.2.输入密码 3.3.我已经安装成功了,前面显示...
  • LayUi+PHP多图片上传

    2019-07-09 17:14:20
    <div class="layui-form-item"> <label class="layui-form-label"><font style="color: red;...保险代理从业人员执业证书</label> <div class="layui-input-block">...
  • 1.最近公司上项目,其中有一个小栏目 是查询身份证的,就是输入身份证码和姓名返回你的地址和图片的这种,也就是公安部全国公民身份信息系统(NCIIS)我是第一次,中间有几个问题第一个难题是这样的,要验证证书,...
  • 近期在做微信小程序的开发,使用node.js的express框架编写后台代码,监听端口为4000,使用nginx代理https服务时(域名已备案,证书正确)发现在本机可以使用域名访问GET服务,但是在外网通过域名访问GET服务时出现...
  • charles 抓包设置

    2019-04-18 12:21:01
    在这里插入图片描述代理开启 代理–windows代理 手机同局域网设置代理为电脑ip,端口为8888 扫描二维码下载安装chls ssl证书 android 7.0 设置 https://blog.csdn.net/weixin_42657307/article/details/89374780 ...
  • 一、检查代理服务器以及CA证书的安装这里以火狐浏览器为例,首先打开服务器代理在配置好在这里插入图片描述配置本地域名并清理掉 不使用代理 栏中的内容点击确定,尝试抓包如抓包成功说明是屏蔽了本地的服务器导致,...
  • 请求手机证书在相关的手机wifi配置pc端代理, 打开Safari软件,输入图片中默认的地址chls.pro/ssl,手机会自动跳转到证书下载界面,下载证书进入通用->描述文件, 安装证书.进入通用->关于本机->证书信任设置,...
  • 在相关的手机wifi配置pc端代理, 打开Safari软件,输入图片中默认的地址chls.pro/ssl,手机会自动跳转到证书下载界面,下载证书 进入通用->描述文件, 安装证书. 进入通用->关于本机->证书信任设置,信任此证书...

空空如也

空空如也

1 2 3 4 5
收藏数 95
精华内容 38
关键字:

代理证书图片