HTTPS请求 ゝ一纸荒年。 2021-09-30 02:42 453阅读 0赞 **hhtps:**HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的 HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。一般用于解决信任主机、通讯过程中的数据的泄密和被篡改等问题。 **http:**全称是Hypertext Transfer Protocol Vertion (超文本传输协议),说通俗点就是用网络链接传输文本信息的协议, 所以http和https之间的区别就在于其传输的内容是否加密和是否是开发性的内容。 **HTTPS和HTTP的区别:** https协议需要到ca申请证书,一般免费证书很少,需要交费。 http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。 http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。 http的连接很简单,是无状态的。 HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。 **相关详细信息参考:**https://blog.csdn.net/zmx729618/article/details/51372659 **XmlManager.java** import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileWriter; import java.io.FilenameFilter; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.URL; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.net.ssl.HostnameVerifier; import javax.net.ssl.SSLContext; import javax.net.ssl.SSLSession; import javax.net.ssl.SSLSocketFactory; import javax.net.ssl.TrustManager; import javax.net.ssl.HttpsURLConnection; import net.sf.json.JSONObject; public class XmlManager { public static String httpurlconnection(Map map,String httpurls){ try { //创建SSLContext SSLContext sslContext=SSLContext.getInstance("SSL"); TrustManager[] tm={new MyX509TrustManager()}; //初始化 sslContext.init(null, tm, new java.security.SecureRandom()); //获取SSLSocketFactory对象 SSLSocketFactory ssf=sslContext.getSocketFactory(); URL url=new URL(httpurls); HttpsURLConnection conn=(HttpsURLConnection) url.openConnection(); //设置是否进行主机名确认(类中类) conn.setHostnameVerifier(new TrustAnyHostnameVerifier()); //设置当前实例使用的SSLSocketFactory conn.setSSLSocketFactory(ssf); conn.setRequestMethod("POST");//连接方式为post conn.setDoOutput(true);//设置是否向urlConn输出,因为是post请求,参数要放在http正文内,因此需要设置为true,默认情况下为false conn.setDoInput(true);//设置是否从urlConn读入,默认情况下为true conn.setRequestProperty("Content-Type","application/json;charset=UTF-8");//设置参数格式 conn.setUseCaches(false); conn.connect(); //往服务器写内容 if(null!=map){ DataOutputStream os=new DataOutputStream(conn.getOutputStream()); JSONObject json=JSONObject.fromObject(map); os.writeBytes(json.toString()); System.err.println("json.toString()"+json.toString()); os.flush(); os.close(); } //读取服务器端返回的内容 InputStream is=conn.getInputStream(); InputStreamReader isr=new InputStreamReader(is, "utf-8"); BufferedReader br=new BufferedReader(isr); String json=br.readLine(); return json; } catch (Exception e) { System.err.println(e.getMessage()); // TODO: handle exception return null; } } //类中类 作用:是否进行主机名确认。True 通过,false不通过 public static class TrustAnyHostnameVerifier implements HostnameVerifier{ public boolean verify(String arg0, SSLSession arg1) { // TODO Auto-generated method stub //设置为true,相当于不进行主机确认,具有一定的不安全性 return true; } } } ** MyX509TrustManager.java** import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import javax.net.ssl.X509TrustManager; public class MyX509TrustManager implements X509TrustManager{ public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { // TODO Auto-generated method stub } public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { // TODO Auto-generated method stub } public X509Certificate[] getAcceptedIssuers() { // TODO Auto-generated method stub return null; } } 转载于:https://www.cnblogs.com/ttqi/p/10437240.html
相关 HTTP请求 http请求分为请求头和请求体,请求头的第一行又为请求行,下面分别进行介绍。 请求头 话不多说,我们直接以一个请求头为例子来介绍,我们随便抓取一个包进行演示,下列是我抓 港控/mmm°/ 2023年10月01日 19:42/ 0 赞/ 95 阅读
相关 http请求 ![1392562-20190731084149017-137668602.png][] ![1392562-20190731085742465-259257336.png] 女爷i/ 2023年08月17日 16:08/ 0 赞/ 216 阅读
相关 http请求 http 1、是客服端与服务器传输文本的一种协议 2、http协议是无状态的 3、http协议默认端口是80 4、http协议(加密传输)端口是443 r囧r小猫/ 2023年03月02日 10:53/ 0 赞/ 78 阅读
相关 http请求 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ub ゝ一世哀愁。/ 2022年12月24日 04:51/ 0 赞/ 216 阅读
相关 http请求 一、request请求 ![Center][] 二、response响应 ![Center 1][] 附: ![Center 2][] [ 柔情只为你懂/ 2022年07月15日 22:41/ 0 赞/ 289 阅读
相关 网站的Http请求转为Https请求 一、申请Https证书 [https://common-buy.aliyun.com/?spm=5176.2020520163.cas.1.zTLyhO&commodit 痛定思痛。/ 2022年06月12日 01:43/ 0 赞/ 375 阅读
相关 HTTP请求 原生JS写一个GET请求 let xhr = new XMLHttpRequest(); xhr.open("GET", "/list"); xhr. 小鱼儿/ 2022年05月23日 00:13/ 0 赞/ 418 阅读
相关 Http请求 package fun.lovey.http; import java.io.; import java.net.HttpURLConnec 快来打我*/ 2022年04月04日 13:58/ 0 赞/ 468 阅读
相关 http请求 [2019独角兽企业重金招聘Python工程师标准>>> ][2019_Python_] ![hot3.png][] import java.io.\; im 心已赠人/ 2022年01月15日 01:23/ 0 赞/ 421 阅读
相关 HTTPS请求 hhtps:HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的 HTTP通道, ゝ一纸荒年。/ 2021年09月30日 02:42/ 0 赞/ 454 阅读
还没有评论,来说两句吧...