/**
         * 所有主机默认通过
         */
private static HostnameVerifier hnv = new HostnameVerifier() {
              public boolean verify(String hostname, SSLSession session) {
               return true;
              }
       };
       /**
        * 关键在这信任所有证书
        */      
       private static TrustManager[] trustAllCerts = new TrustManager[] {
                new X509TrustManager() {
                    public X509Certificate[] getAcceptedIssuers() {
                        return null;
                    }
                    public void checkServerTrusted(X509Certificate[] certs, String authType) {
                        return;
                    }
                    public void checkClientTrusted(X509Certificate[] certs, String authType) {
                        return;
                    }
                }//X509TrustManager
       };//TrustManager[]

String keyf="F://test.pfx";
           
            String pass="12345678";
            //set up a connection
            SSLSocketFactory ssf=null;

PrintWriter out = null;
            BufferedReader in = null;
            String result = "";
            try
            {
                //init context
                SSLContext ctx=SSLContext.getInstance("TLS");           
                KeyManagerFactory kmf=KeyManagerFactory.getInstance("SunX509");
                TrustManagerFactory tmf=TrustManagerFactory.getInstance("SunX509");           
                KeyStore ks=KeyStore.getInstance("PKCS12");

//load keystore

/*

*如果这里失败,请确认在jre/lib/sercurity中jce的两个包local_policy.jar和US_export_policy.jar是jce6,在java.sun.com中j2se的

additional downloads可以下载到,然后在项目是用bcprov-jdk16-144.jar。

*/

ks.load(new FileInputStream(keyf),pass.toCharArray());
               
                kmf.init(ks,pass.toCharArray());
               
                ctx.init(kmf.getKeyManagers(),trustAllCerts,null);
               
                System.out.println("load keystore success.");
                ssf=ctx.getSocketFactory();
               
                HttpsURLConnection.setDefaultSSLSocketFactory(ssf);

HttpsURLConnection.setDefaultHostnameVerifier(hnv);
               
                URL realUrl = new URL(url);
               
                //打开和URL之间的连接
                HttpsURLConnection conn = (HttpsURLConnection) realUrl.openConnection();

//设置通用的请求属性
                conn.setRequestProperty("accept", "*/*");
                conn.setRequestProperty("connection", "Keep-Alive");
                conn.setRequestProperty("user-agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
               
                //发送POST请求必须设置如下两行
                conn.setDoOutput(true);
                conn.setDoInput(true);
                //获取URLConnection对象对应的输出流
                out = new PrintWriter(conn.getOutputStream());
                //发送请求参数
                out.print(param);
                //flush输出流的缓冲
                out.flush();
                //定义BufferedReader输入流来读取URL的响应
                in = new BufferedReader(
                new InputStreamReader(conn.getInputStream()));
                String line;
                while ((line = in.readLine())!= null)
                {
                    result += "/n" + line;
                }
            }
            catch(Exception e)
            {
                System.out.println("发送POST请求出现异常!" + e);
                e.printStackTrace();
            }
            //使用finally块来关闭输出流、输入流
            finally
            {
                try
                {
                    if (out != null)
                    {
                        out.close();
                    }
                    if (in != null)
                    {
                        in.close();
                    }
                }
                catch (IOException ex)
                {
                    ex.printStackTrace();
                }
            }

工行网银查询接口完整版ssl相关推荐

  1. 微信小程序之快递查询(完整版)

    一.简介: 点击按钮查看快递信息.我也在网上找了很多快递查询的例子,但是它们都不是很详细.在代码上他们都没错,但是在配置上却缺少了一些东西,导致我们这些白嫖党并没有什么用,对于程序中出现的一些错误无法 ...

  2. 微信小程序请求后台接口(完整版)

    按照我写的Demo阐述下,三种方法都可以,看各自的需求使用吧 方式一: 以点击事件的形式 : // 其他页面内容就不展示了,按照自己的结构去渲染数据 <button type="but ...

  3. CI框架下 新浪微博登录接口完整版

    https://www.cnblogs.com/yznyzcw/p/3756622.html#top 说明:本贴只适合CI框架.功能实现:登录接口跳转链接成功,获取用户信息(包括最重要的u_id)成功 ...

  4. 微信jsapi 调用分享接口(完整版)

    1.测试环境 申请测试账号 地址: https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/i ...

  5. C# Winform调用百度接口实现身份证文字识别教程完整版!!!(源码)

    C# Winform调用百度接口实现身份证文字识别教程源码完整版 这是一篇完整的身份证文字识别系统,源码已经附上,按照我的步骤,可以实现人脸识别登录呦!!!当然,前提是你有耐心看完! 目录 C# Wi ...

  6. python接口自动化测试框架实战从设计到开发_【B0753】[java视频教程]Python接口自动化测试框架设计到开发完整版视频教程 it教程...

    Java视频教程名称:Python接口自动化测试框架设计到开发完整版视频教程   java自学网[javazx.com]  Python视频教程   it教程 Java自学网收集整理 java论坛&q ...

  7. 华为_网络工程师_初级笔记(完整版)

    初级网络工程师笔记完整版 1.1 企业网架构 2.0 OSI 七层 模型 2.1 OSI模型-简介 2.2 OSI模型-物理层 2.3 OSI模型-数据链路层 2.4 OSI模型-网络层 2.5 OS ...

  8. 云架构师进阶攻略(完整版)

    一.架构的三个维度和六个层面 1.1.三大架构 在互联网时代,要做好一个合格的云架构师,需要熟悉三大架构. 第一个是IT架构,其实就是计算,网络,存储.这是云架构师的基本功,也是最传统的云架构师应该首 ...

  9. 二进制包安装Kubernetes集群环境完整版

    Kubernetes 概述 1. Kubernetes是什么 Kubernetes是Google在2014年开源的一个容器集群管理系统,Kubernetes简称K8S. K8S用于容器化应用程序的部署 ...

最新文章

  1. bat+sqlcmd 批量执行脚本
  2. [云炬创业基础笔记]第九章企业的法律形态测试6
  3. win10电脑服务器在哪个文件夹下,Win10桌面背景在哪个文件夹?Win10桌面背景所在文件夹介绍...
  4. Redisson框架框架集成
  5. 微软反垄断案新突破 Win10系统或需剥离可信计算
  6. Halcon例程详解(基于卡尺工具的匹配测量方法) —— measure_stamping_part.hdev
  7. guassdb200 single node deployment
  8. MySQL5.7收集表统计信息时对该表上增删改查的影响
  9. 剑指 Offer II 036. 后缀表达式
  10. access 一亿条数据_操作用户只能看到自己本部门的数据功能
  11. 微机实验报告2 显示程序实验
  12. 基于Windows Server 2008 R2的Failover Cluster(故障转移群集)部署Sql Server 2008 AA(主主) 模式群集(第一部分)
  13. 用 Python 爬取起点小说网
  14. y = mapminmax(‘apply‘,x,ps)中各个参数是什么意思呢?
  15. 实验二线性表的链式存储结构
  16. 飞秋2013设置后无法保存配置问题
  17. Python+Selenium_UI自动化操作(1)——将浏览器最大化
  18. 华为交换机console口如何设置密码
  19. labview非线性曲线拟合Lorenz拟合
  20. SuperMap GIS管线数据优化

热门文章

  1. 惟有健康少不了——力荐《人体使用手册》
  2. 我们去首都机场为火星人送行
  3. jQuery中的$是什么含义?
  4. [C++][QT]俄罗斯方块
  5. 城市新型智慧能源体系建设的初步解决方案
  6. 递归数列(recursive sequence)
  7. matlab超晶格,绝热频率转化和光学超晶格的结构设计重点.doc
  8. 基于STM32开发板实现传感数据采集-DHT11温湿度采集
  9. 伽罗网站服务器,伽罗首件出冰矛,究竟是“黑科技”还是“坑”?原来我们都错了...
  10. 基金投资入门教程-----快速读懂基金招募书