JAVA: POST с учетными данными для конечной точки REST

Я использовал почтальон, чтобы сделать следующее:

Если я использую почтальон, чтобы сделать пост XML

  • POST Body raw XML (text / xml) http://localhost:8082/api/method
  • Это не работает, если я не выполню предыдущий пост с именем пользователя и паролем

Итак, все вышеперечисленное работает в таком порядке... Как мне воспроизвести это на Java?

Мне нужно иметь возможность POST для входа в систему, а затем POST мой XML в API

Я попробовал это:

POST для входа

    RestTemplate restTemplate = new RestTemplate();
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
    HttpEntity<String> request = new HttpEntity<String>(message, headers);
    ResponseEntity<String> response = restTemplate.postForEntity("http://localhost:8082/login?username=john&password=abcd", request, String.class);

API POST to Rest

    RestTemplate restTemplate = new RestTemplate();
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_XML);
    HttpEntity<String> request = new HttpEntity<String>(message, headers);
    ResponseEntity<String> response = restTemplate.postForEntity("http://localhost:8082/api/method", request, String.class);

Но кажется, что это отдельные запросы. Тем не менее, логин тоже не работает. Любая помощь будет большой благодарностью.

Я не против использования Apache HTTP-клиента...

0 ответов

Другие вопросы по тегам