我想在连接到Spring启动服务器的连接上添加SSL。到目前为止,我有一个Arduino,一个应用程序和一个mongodb数据库连接到服务器并向它发出请求。所有的通信都是HTTP。我计划在HTTPS下制作所有内容,但我想知道服务器是否可以同时处理http和HTTPS连接,因为我计划首先在应用程序和服务器之间实现SSL,并将其余部分保留在http下。
我正在使用Spring启动。
我将研究将SSL添加到arduino的可行性,但我想知道服务器是否可以处理Https和http请求,例如arduino使用http和Android发送请求使用https发送请求。因为我计划完全添加SSL但是暂时,我会尝试从Android应用程序获取SSL以切断我将认为的那样' ll更容易。
答案 0 :(得分:0)
我个人觉得最好使用反向代理。我最喜欢的是documentation。除了保证连接,它还可以处理负载平衡,故障转移,HTTP - > HTTPS重定向等等。
要生成SSL证书,您可以使用NGINX。
答案 1 :(得分:0)
使用以下代码来处理https和http
if (requestUrl.getProtocol().equalsIgnoreCase("https")) {
setHostVerifier();
SSLContext sc = SSLContext.getInstance("TLSv1.2");
sc.init(null,
new TrustManager[] { new TrustAllX509TrustManager() },
new java.security.SecureRandom());
HttpsURLConnection
.setDefaultSSLSocketFactory(sc.getSocketFactory());
urlconnection = (HttpsURLConnection) requestUrl.openConnection();
} else {
urlconnection = (HttpURLConnection) requestUrl.openConnection();`enter code here`
}