@vbNoName

Как послать http запрос с SSL сертификатами?

Есть вот такой скрипт на PHP

$ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_POST,true);
        curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
        curl_setopt($ch, CURLOPT_HEADER,0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,30);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,false);
        curl_setopt($ch, CURLOPT_SSLCERT,PUBLIC_ENCODE_KEY__);
        curl_setopt($ch, CURLOPT_SSLKEY,PRIVATE_KEY__);
        curl_setopt($ch, CURLOPT_SSLKEYPASSWD,PASSWORD__);
        $dt = curl_exec($ch);


Помогите переделать его, что бы послать запрос из java. Сейчас делаю вот так

HttpClient client = HttpClientBuilder.create().build();
                HttpPost request = new HttpPost("...");
                request.addHeader(new BasicHeader("Content-Type", "application/pkcs7-mime"));
                request.setEntity(new StringEntity(data, "UTF-8"));
                HttpResponse response = client.execute(request);
                log.info("Response status code: {}", response.getStatusLine().getStatusCode());
                HttpEntity entity = response.getEntity();
                if (entity != null) {
                    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(entity.getContent()));
                    StringBuilder result = new StringBuilder();
                    String line = "";
                    while ((line = bufferedReader.readLine()) != null) {
                        result.append(line);
                    }
                    return result.toString();
                }


Но получаю ошибку

javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure


Собственно, вопрос в том, как и куда добавить SSL сертификаты эти?
  • Вопрос задан
  • 589 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы