FreelanceBot
43 строки · 1.5 Кб
1package telegramBot.task;
2
3import org.jsoup.Connection;
4import org.jsoup.Jsoup;
5
6import javax.net.ssl.SSLContext;
7import javax.net.ssl.SSLSocketFactory;
8import javax.net.ssl.TrustManager;
9import javax.net.ssl.X509TrustManager;
10import java.security.KeyManagementException;
11import java.security.NoSuchAlgorithmException;
12import java.security.cert.X509Certificate;
13
14public class SSLHelper {
15static public Connection getConnection(String url){
16return Jsoup.connect(url).userAgent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) " +
17"AppleWebKit/537.36 (KHTML, like Gecko) Edg/112.0.1722.48")
18.sslSocketFactory(SSLHelper.socketFactory());
19}
20
21static private SSLSocketFactory socketFactory() {
22TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() {
23public java.security.cert.X509Certificate[] getAcceptedIssuers() {
24return new X509Certificate[0];
25}
26
27public void checkClientTrusted(X509Certificate[] certs, String authType) {
28}
29
30public void checkServerTrusted(X509Certificate[] certs, String authType) {
31}
32}};
33
34try {
35SSLContext sslContext = SSLContext.getInstance("SSL");
36sslContext.init(null, trustAllCerts, new java.security.SecureRandom());
37return sslContext.getSocketFactory();
38
39} catch (NoSuchAlgorithmException | KeyManagementException e) {
40throw new RuntimeException("Failed to create a SSL socket factory", e);
41}
42}
43}
44