写一个BASIC认证的https协议
时间:2022-04-29
本文章向大家介绍写一个BASIC认证的https协议,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
仅供参考,转载请注明出处,谢谢
/**
* BASIC认证的https
* @param urlStr https请求的地址
* @return
*/
public static String get(String urlStr) {
log.info("url-->" + urlStr);
String rs = "";
StringBuffer buffer = new StringBuffer();
DefaultHttpClient client =null;
HttpGet get = new HttpGet(urlStr);
InputStream instream = null;
BufferedReader in = null;
HttpResponse response;
try {
//处理HTTPS请求
client= new SSLClient();
//BASIC认证
client.getCredentialsProvider().setCredentials(AuthScope.ANY,new
UsernamePasswordCredentials("用户名","密码"));
//获取响应
response = client.execute(get);
instream = response.getEntity().getContent();
in = new BufferedReader(new InputStreamReader(instream, "utf-8"));
String line = "";
while ((line = in.readLine()) != null) {
buffer.append(line);
}
rs = buffer.toString();
System.out.println(rs);
} catch (Exception e) {
e.printStackTrace();
}finally{
//释放资源,自己处理一下,不在赘述
}
return rs;
}
public class SSLClient extends DefaultHttpClient{
//证书处理
private static Logger log = Logger.getLogger(getClass().class);
public SSLClient() throws Exception{
super();
SSLContext ctx = SSLContext.getInstance("TLS");
X509TrustManager tm = new X509TrustManager() {
@Override
public void checkClientTrusted(X509Certificate[] chain,
String authType) throws CertificateException {
}
@Override
public void checkServerTrusted(X509Certificate[] chain,
String authType) throws CertificateException {
}
@Override
public X509Certificate[] getAcceptedIssuers() {
return null;
}
};
log.info("---");
ctx.init(null, new TrustManager[]{tm}, null);
SSLSocketFactory ssf = new
SSLSocketFactory(ctx,SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
ClientConnectionManager ccm = this.getConnectionManager();
SchemeRegistry sr = ccm.getSchemeRegistry();
sr.register(new Scheme("https", 443, ssf));
}
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法