Я использую метод Resttemplate resttemplate.exchange для публикации запроса в конечную точку. У меня есть заголовок OAuth и httpentity в другом файле, который я хочу передать для публикации запроса, в дополнение к этому я также хочу передать запрос в конечную точку. < /p>
Я смог успешно передать заголовки и запрос, но не http объект, которая содержит учетные данные < /p>
ResponseEntity result = restTemplate.exchange(uri, HttpMethod.POST,
new HttpEntity(request, dataRepo.getHeader()), String.class);
< /code>
Есть ли любой способ передать все 3 вещи < /p>
[*] Httpentity
[*] httphaders
[*] запрос
< /ol>
Вот мой код < /p>
@RunWith(MockitoJUnitRunner.class)
@TestPropertySource
public class DataTest {
@Inject
private Oauth oauth;
@Mock
private DataRepo dataRepo;
RestTemplate restTemplate = new RestTemplate();
@Qualifier(OAuth2HttpHeadersBuilder.BEAN_NAME)
NewHttpHeader headersBuilder;
@Test
public void testAddEmployeeSuccess() throws URISyntaxException {
URI uri = new URI(url);
Set mockData = Stream.of("A","B").collect(Collectors.toSet());
String onsString = String.join(",", mockData);
Map requestBody = new HashMap();
requestBody.put("name", onsString);
JSONObject jsonObject = new JSONObject(requestBody);
HttpEntity request = new HttpEntity(jsonObject.toString(), null);
ResponseEntity result = restTemplate.exchange(uri, HttpMethod.POST,
new HttpEntity(request, dataRepo.getHeader()), String.class);
Assert.assertEquals(201, result.getStatusCodeValue());
}
< /code>
Приведенный ниже код находится в файле newhttphader.java, который содержит
Header и httpentity
private HttpEntity getHttpEntity() {
MultiValueMap store = new LinkedMultiValueMap();
store.add( "pas", "password" );
store.add( "name", config.getVaultServiceAccountName() );
return new HttpEntity( store, getHeader() );
}
private HttpHeaders getHeader() {
HttpHeaders httpHeaders = headersBuilder.build();
httpHeaders.add( HttpHeaders.ACCEPT, ContentType.APPLICATION_JSON.getMimeType() );
httpHeaders.add( HttpHeaders.CONTENT_TYPE, ContentType.APPLICATION_FORM_URLENCODED.getMimeType() );
return httpHeaders;
}
}
Подробнее здесь: https://stackoverflow.com/questions/599 ... st-request
Как пропустить заголовки и запросить тело в запросе почтовых сообщений? ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение