Spring RestTemplate отличается от Postman - PullRequest
0 голосов
/ 13 июля 2020

В Postman я отправляю следующий запрос: img1 img2

Я получаю ожидаемый ответ с учетом лимита.

Вот моя реализация Spring RestTemplate:

        String url = "https://somedomain.com/api/v1/xyz";

        MultiValueMap<String, String> map = new LinkedMultiValueMap<>();
        map.add("limit", "1");

        HttpHeaders headers = new HttpHeaders();
        headers.set("Authorization", "<CENSORED>");
        headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);

        HttpEntity<MultiValueMap<String, String>> request = new HttpEntity<>(map, headers);

        ResponseEntity<SomeClass> response;
        try {
            response = restTemplate.exchange(url, HttpMethod.GET, request, SomeClass.class);
        } catch (RestClientException e) {
            // not important
        }

В ответе ограничение не учитывается. Это как если бы вообще не отправили ограничение.

Вот что регистрирует мое приложение:

==============================request start==============================
URI         : https://somedomain.com/api/v1/xyz
Method      : GET
Headers     : [Accept:"application/json, application/*+json", Authorization:"<CENSORED>", Content-Type:"application/x-www-form-urlencoded;charset=UTF-8", Content-Length:"7"]
Request body: limit=1
===============================request end===============================
==============================response start=============================
Status code  : 200 OK
Status text  : OK
Headers      : // some headers
Response body: // response
==============================response end===============================

Есть идеи, в чем может быть проблема? Если я вручную установил Content-Length равным 7 в Postman, он все равно будет работать.

Спасибо!

...