`
glacier3
  • 浏览: 377417 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

java访问基于https

阅读更多

The code below is base on the internet material. One sinaeio: If you want to sign in the web site which based on https,sometimes you have to pass the username and password.  Please pay attention to bold part, it shows how to do it. You have to encode the username and password base on base64.

 

 

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.SSLSession;

import sun.misc.BASE64Encoder;


public class ssltest {

	public static void main(String[] args) throws Exception {
		ssltest s = new ssltest();
		s.connect("http://006devtools-vs2/svn/hf/");
	}
    protected void connect(String strUrl) throws Exception {
//            trustAllHttpsCertificates();
//            HttpsURLConnection.setDefaultHostnameVerifier(hv);
           


String authorization = "alex_zhang:pwd"; String encodedAuthorization= new String(new BASE64Encoder().encode(authorization.getBytes())); URL url = new URL(strUrl); HttpURLConnection urlConn = (HttpURLConnection) url.openConnection(); urlConn.setRequestProperty("Authorization", "Basic " + encodedAuthorization); urlConn.connect(); int responseCode = urlConn.getResponseCode(); System.out.println(responseCode); InputStream inputStream = urlConn.getInputStream(); BufferedReader d = new BufferedReader(new InputStreamReader(inputStream)); String readLine = null; while((readLine = d.readLine())!= null) System.out.println(readLine); } HostnameVerifier hv = new HostnameVerifier() { public boolean verify(String urlHostName, SSLSession session) { System.out.println("Warning: URL Host: " + urlHostName + " vs. " + session.getPeerHost()); return true; } }; private static void trustAllHttpsCertificates() throws Exception { // Create a trust manager that does not validate certificate chains: javax.net.ssl.TrustManager[] trustAllCerts = new javax.net.ssl.TrustManager[1]; javax.net.ssl.TrustManager tm = new miTM(); trustAllCerts[0] = tm; javax.net.ssl.SSLContext sc = javax.net.ssl.SSLContext.getInstance("SSL"); sc.init(null, trustAllCerts, null); javax.net.ssl.HttpsURLConnection.setDefaultSSLSocketFactory( sc.getSocketFactory()); } public static class miTM implements javax.net.ssl.TrustManager, javax.net.ssl.X509TrustManager { public java.security.cert.X509Certificate[] getAcceptedIssuers() { return null; } public boolean isServerTrusted( java.security.cert.X509Certificate[] certs) { return true; } public boolean isClientTrusted( java.security.cert.X509Certificate[] certs) { return true; } public void checkServerTrusted( java.security.cert.X509Certificate[] certs, String authType) throws java.security.cert.CertificateException { return; } public void checkClientTrusted( java.security.cert.X509Certificate[] certs, String authType) throws java.security.cert.CertificateException { return; } } }
 

 

分享到:
评论

相关推荐

    java源码包---java 源码 大量 实例

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    基于java爬虫的就业大数据系统设计与实现.rar(含论文+程序毕业设计)

    基于java爬虫的就业大数据系统设计与实现 1 摘 要 1 1.1课题选题背景 4 1.2课题研究的意义 4 2.1功能需求分析 4 2.2系统性能分析 5 3.1系统工作流程图 5 3.2数据结构设计 7 3.3系统各功能流程图 7 (1) 主模块功能...

    基于Java+Mysql的图书管理系统设计.zip

    (1)开发语言:Java (2)开发环境:Eclipse (3)数据存储:存储数据和访问数据,使用更复杂的数据模型,以支持更复杂的功能。 (4)操作界面:使用浏览器+html页面作为操作界面; (5)设计模式:理解并使用MVC...

    java源码包4

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包3

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    JAVA上百实例源码以及开源项目

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    JAVA上百实例源码以及开源项目源代码

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    java源码包2

     Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...

    基于微信小程序的智慧家政系统 JAVA 毕业设计 Vue+SpringBoot+MySQL

    基于微信小程序+JAVA+Vue+SpringBoot+MySQL的智慧家政系统,包含了地址管理模、订单管理、家政分类管理、家政服务管理、用户反馈管理模块,还包含系统自带的用户管理、部门管理、角色管理、菜单管理、日志管理、数据...

    Python基于pyjnius库实现访问java类

    Pyjnius是一个用于访问Java类的Python库。 适用场景:极个别的加密算法等内容,用python不方便实现或者实现较耗时,可基于Pyjnius把java类当做python库使用。 文档:...

    Java思维导图xmind文件+导出图片

    基于Nginx+lua完成访问流量实时上报Kafka的实战 Netty 高性能NIO框架 IO 的基本概念、NIO、AIO、BIO深入分析 NIO的核心设计思想 Netty产生的背景及应用场景分析 基于Netty实现的高性能IM聊天 基于Netty实现...

    基于jsch的ssh访问

    基于jsch包实现远程服务器的sftp访问,并可远程发送命令执行,可以配合https://download.csdn.net/download/u011230766/10710755,实现密钥登录,类KeyGen用于生成非对称密钥

    使用cxf和spring开发基于https的webservice服务端以及客户端样例

    使用cxf和spring开发基于https的webservice服务端以及客户端样例

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java访问权限控制源代码 1个目标文件 摘要:Java源码,文件操作,权限控制 Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流...

    Java实现的反向代理程序(源码版)

    使用Java编写的反向代理程序(源代码),通过简单的参数配置即可实现某些特定站点的反向代理,并在此过程中改变一些站点的特定行为。例如:允许特点站点跨域访问被代理的站点,或者屏蔽被代理站点识别请求访问客户端...

    课程设计:基于java8+jsp+mysql+tomcat+javascript实现的在线考试系统【源码+数据库】.zip

    课程设计:基于java8+jsp+mysql+tomcat+javascript实现的在线考试系统.zip 本系统设计综合应用所学知识开发一个基于MVC模式的考试系统 技术栈 java 8 + jsp + mysql + tomcat + javascript + css 相关工具组件 项目...

    Java毕设:基于SSM的高校运动会管理系统(spring+spring mvc+mybatis+mysql)1008

    该高校运动会信息管理系统是以B/S架构为设计基础并基于SSM框架开发的系统,系统以IntelliJ IDEA作为开发工具,采用了Java语言和MySQL数据库来实现。 多角色 管理员 教师 学生。 系统按预定的算法完成了创办运动会、...

    基于itext7实现的A4版PDF电子签名java示例程序源码

    基于itext7实现的A4版PDF电子签名java示例程序源码 1、需要进行电子签名的html文件内容,一般为富文本编辑器对应代码。 2、用户电子签名完成后的签名图片访问地址,例如:http://*****/hlwft/2_1659677726496.jpg。...

    项目基于JDBC+MySQL的Java教务管理系统(附源码+论文说明)

    JDBC:作为Java程序访问数据库的标准接口,使用JDBC可以方便地连接和操作MySQL数据库。 MySQL数据库:作为一种开源的关系型数据库管理系统,MySQL提供了稳定、高效的数据存储和管理能力。 Java Control:实现用户...

    FACPL - Access control policies:基于属性的访问控制策略的 Java 库-开源

    FACPL:用于规范和实施访问控制策略的基于 Java 的库 - 基于属性的访问控制策略 - 用于管理的高级功能,例如,组合算法和缺失的属性 - 从 FACPL 代码开始生成 XACML 代码 - 生成从 XACML 代码开始的 FACPL 代码源...

Global site tag (gtag.js) - Google Analytics