Как настроить PayPal, получить параметр токена доступа для вызова POSTMAN в Spring Boot (Java), вызов REST TEMPLATE

Я могу получить токен доступа с помощью вызова POSTMAN, передав параметры ниже,

URL-адрес POST: https://api.sandbox.paypal.com/v1/oauth2/token

Типавторизации: базовая аутентификация

Имя пользователя: MY_CLIENT_ID

Пароль: MY_SECRET

Заголовки Content-Type: application/x-www-form-urlencoded

Тело grant_type: client_credentials

Пожалуйста, дайте мне знать, как я могу установить вышеуказанные детали в вызове REST TEMPLATE при весенней загрузке, чтобы получить токен доступа

0 ответов

Вы можете обратиться к следующему коду

public void run(String... args) throws Exception {
        StringHttpMessageConverter stringHttpMessageConverter = new StringHttpMessageConverter(StandardCharsets.UTF_8);
        RestTemplate restTemplate = new RestTemplateBuilder()
                .setConnectTimeout(Duration.ofSeconds(60))
                .additionalMessageConverters(stringHttpMessageConverter)
                .build();

        String uri = "https://api.paypal.com/v1/oauth2/token?grant_type=client_credentials";
        String username = "yourAppClientId";
        String password = "yourAppPwd";

        HttpHeaders basicAuth = new HttpHeaders() {{
            String auth = username + ":" + password;
            byte[] encodedAuth = Base64.encodeBase64(
                    auth.getBytes(StandardCharsets.US_ASCII));
            String authHeader = "Basic " + new String(encodedAuth);
            set("Authorization", authHeader);
        }};

        ResponseEntity<String> response = restTemplate.exchange
                (uri, HttpMethod.POST, new HttpEntity<>(basicAuth), String.class);
        System.out.println(response.getBody());
    }
Другие вопросы по тегам