Как авторизовать токен носителя в Java

avatar
Joe Harry
9 августа 2021 в 05:20
215
0
0

Я использую Java 7.

Я пытаюсь получить доступ к API (https), используя токен носителя авторизации в Java.

Вот код клиента, который я использовал:

public class HttpURLConnectionExample {

public static void main(String[] args) throws Exception {
            try {
                URL url = new URL("https://example-url.com/xxx");
                HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    
                conn.setRequestProperty("Authorization", "Bearer eyXXXXXX");
    
                conn.setRequestProperty("Content-Type", "application/json");
                conn.setRequestMethod("GET");
    
                BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
                String output;
    
                StringBuffer response = new StringBuffer();
                while ((output = in.readLine()) != null) {
                    response.append(output);
                }
    
                in.close();
                // printing result from response
                System.out.println("Response: " + response.toString());
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
}

Затем я получаю ответ об ошибке:

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: проверка пути PKIX не удалось: java.security.cert.CertPathValidatorException: проверка метки времени не удалось

Как это решить?

Источник
chrylis -cautiouslyoptimistic-
9 августа 2021 в 05:23
0

Убедитесь, что ваши системные часы точны и что сервер имеет актуальный сертификат.

Yusuf Erdoğan
9 августа 2021 в 06:36
0

@chrylis-cautiouslyoptimistic- Иногда я получаю эту ошибку на своих клиентских серверах. Как обновить сертификаты?

Joe Harry
9 августа 2021 в 09:30
0

У меня уже есть имя пользователя и пароль. Как сгенерировать токен и обновить сертификат в коде?

Ответы (0)