`
yunchow
  • 浏览: 325323 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

JAVA调用HTTPS接口

 
阅读更多

	public String callMemberInfoInterface(String request) throws Exception {
		if (logger.isInfoEnabled()) {
			logger.info("callMemberInfoInterface request : " + request);
		}
        // First create a trust manager that won't care.  
        X509TrustManager trustManager = new X509TrustManager() {  
            public void checkClientTrusted(X509Certificate[] chain,  
                    String authType) throws CertificateException {  
                // Don't do anything.  
            }  
  
            public void checkServerTrusted(X509Certificate[] chain,  
                    String authType) throws CertificateException {  
                // Don't do anything.  
            }  
  
            public X509Certificate[] getAcceptedIssuers() {  
                // Don't do anything.  
                return null;  
            }  
  
        };  
        // Now put the trust manager into an SSLContext.  
        SSLContext sslcontext = SSLContext.getInstance("SSL");  
        sslcontext.init(null, new TrustManager[] { trustManager }, null);  
  
        // Use the above SSLContext to create your socket factory  
        // (I found trying to extend the factory a bit difficult due to a  
        // call to createSocket with no arguments, a method which doesn't  
        // exist anywhere I can find, but hey-ho).  
        SSLSocketFactory sf = new SSLSocketFactory(sslcontext);  
        sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);  
  
        DefaultHttpClient httpclient = new DefaultHttpClient();  
        httpclient.getConnectionManager().getSchemeRegistry().register(new Scheme("https", sf, 443));  
        
        HttpGet httpPost = new HttpGet(request); 
        String result = "";  
        // Execute HTTP request  
        httpPost.setHeader("Authorization", "basic " + "dGNsb3VkYWRtaW46dGNsb3VkMTIz");   
        httpPost.setHeader("Content-type", "application/xml");  
  
        HttpResponse response = httpclient.execute(httpPost);  
        HttpEntity resEntity = response.getEntity();  
        InputStreamReader reader = new InputStreamReader(resEntity.getContent());  
  
        char[] buff = new char[1024];  
        int length = 0;  
        while ((length = reader.read(buff)) != -1) {  
            result += new String(buff, 0, length);  
        }  
        httpclient.getConnectionManager().shutdown();  
          
        if (logger.isInfoEnabled()) {
        	logger.info("callMemberInfoInterface >>>:" + new String(result.getBytes("GBK"), "UTF-8")); 
        }
        return result;
    }  


0
2
分享到:
评论

相关推荐

    JAVA利用HttpClient进行HTTPS接口调用

    在这个主题中,我们将深入探讨如何在Java中使用HttpClient来实现HTTPS接口调用。 首先,我们需要理解HTTPS协议。HTTPS是HTTP(超文本传输协议)与SSL/TLS(安全套接层/传输层安全)的结合,它为数据传输提供了加密...

    java实现读取证书访问https接口

    本篇文章将深入探讨如何在Java中实现读取不同格式(如cer、der、crt)的证书,以及如何使用这些证书访问HTTPS接口并获取返回数据。 首先,我们需要了解证书的基本概念。证书通常包含了公钥和一些身份信息,由受信任...

    java 调用https webservice实例及axis包

    在Java开发中,调用HTTPS发布的Web Service接口是一项常见的任务,尤其在企业级应用中,HTTPS提供了安全的数据传输。本文将详细介绍如何使用Apache Axis库来实现这一功能,并提供相关步骤和注意事项。 首先,理解...

    Java中如何通过https调用Webservice接口_测试环境.rar

    综上所述,通过Java调用HTTPS Web Service接口涉及的关键点包括证书的信任管理、自定义`SSLSocketFactory`以及正确处理网络请求。了解并掌握这些知识点,能帮助开发者在安全的环境中进行Web Service交互。

    用java访问https网络,无需证书

    使用java写的访问https网络协议的网址,绕过了证书的验证

    Java Https请求,跳过证书,直接访问

    在Java编程中,HTTPS(Hypertext Transfer Protocol Secure)是一种用于在互联网上安全传输数据的协议,它基于HTTP,但提供了额外的安全性层,通过SSL/TLS(Secure Sockets Layer/Transport Layer Security)来加密...

    浅谈java调用Restful API接口的方式

    Java调用Restful API接口是Java开发中非常重要的一部分,了解Java调用Restful API接口的方式可以帮助开发者更好地理解和使用相关技术。本文将详细介绍Java调用Restful API接口的方式,包括使用HttpURLConnection、...

    java调用Gmssl国密接口实例

    java调用Gmssl中国密接口进行对称与非对称加解密等运算,动态so库进行接口jni方式调用,采取接口形式对外暴露,方便对接系统调用相关java接口进行相关运算操作。

    JAVA利用HttpClient进行HTTPS接口调用的方法

    Java中使用HttpClient进行HTTPS接口调用的方法是通过继承DefaultHttpClient类,忽略证书校验过程。首先,创建一个SSLClient类,继承DefaultHttpClient类,并在构造函数中初始化SSLContext和TrustManager。然后,使用...

    Java程序调用MATLAB接口

    Java程序调用MATLAB接口 Java 程序调用 MATLAB 接口是 Java 和 MATLAB 之间的交互接口,允许 Java 程序调用 MATLAB 的函数和方法。本文将详细介绍 Java 程序调用 MATLAB 接口的注意事项、环境安装、MATLAB 如何生成...

    Java发https请求证书问题

    - 以上两行代码的作用是告诉 Java 虚拟机信任 `tomcat.keystore` 中的证书,并使用指定的密码访问密钥库。 5. **发送 HTTPS 请求**: - 使用上述配置后的环境发送 HTTPS 请求,此时应该能正确地与服务器建立安全...

    Https请求工具类,Java实现http请求,https请求

    在使用Https请求时,需要注意SSL验证的实现,否则会出现SSL握手错误。在这里,我们使用了MyX509TrustManager来验证SSL证书,该类继承自X509TrustManager,并覆盖了checkClientTrusted和checkServerTrusted方法来实现...

    java上传文件接口调用源码案例

    在这个“java上传文件接口调用源码案例”中,我们将探讨Java如何通过HTTP或者HTTPS协议来上传文件,以及如何使用`UrlUtils.java`这样的工具类。 首先,让我们了解一下接口调用的基本概念。接口是一种约定,定义了两...

    使用httpclient无需证书调用https的示例(java调用https)

    总的来说,这个示例展示了如何在Java中使用HttpClient调用HTTPS服务,同时跳过SSL证书验证。然而,这样做存在安全风险,因为任何中间人攻击者都可以拦截并篡改通信。在生产环境中,你应该始终使用受信任的证书并启用...

    Java+Axis2调用Web Services 网络接口

    - 安全性:确保Web服务调用过程中数据的安全传输,如使用HTTPS和认证机制。 - 错误处理:充分考虑可能出现的错误情况,编写健壮的异常处理代码。 总的来说,Java和Axis2的结合提供了一种强大而灵活的方式来调用...

    java支持https的Post请求

    在Java编程环境中,进行HTTPS POST请求是常见的网络通信任务,特别是在需要...同时,`HttpURLConnection`提供了方便的接口来发送HTTPS POST请求。在实际开发中,应根据具体需求选择合适的方法,并始终注重网络安全。

    java调用webservice接口.zip

    本教程将深入探讨如何使用Axis库来实现在Java中调用WebService接口。Axis是一个开源的Java SOAP栈,它提供了从Java代码中创建和消费Web服务的能力。 **一、什么是WebService?** WebService是一种基于XML的协议,它...

    Java调用百度翻译接口

    在IT行业中,API(应用...总之,通过Java调用百度翻译API,我们可以轻松地为应用程序添加翻译功能,满足用户的跨语言交流需求。在实际开发中,需要注意API的使用限制、安全性和性能优化,确保服务的稳定性和用户体验。

Global site tag (gtag.js) - Google Analytics