Шаблон REST не может обработать ответ String с помощью двоеточия (':') - PullRequest
0 голосов
/ 12 марта 2019

Я пытаюсь нажать POST API, который возвращает токен формата - "ABC: XYZ". Когда я пытаюсь разобрать это в строку, он не может это сделать. Я подозреваю, что это связано с наличием двоеточия (:) в токене, из-за которого он обрабатывает его как JSON. Я использую шаблон REST. Я попытался установить заголовок принятия как MediaType.TEXT_PLAIN, но это также не сработало для меня.

Ниже мой код

        ResponseEntity<Object> response = null;
        HttpHeaders headers = new HttpHeaders();
        try {
            UriComponentsBuilder uriBuilder = UriComponentsBuilder.fromHttpUrl("https://XXXX/YYYY");
            Map<String, String> criteria = new HashMap<>();
            criteria.put("username", "JOHNDOE"); 
            uriBuilder.queryParam("username", "{username}");
            criteria.put("target_site", "SITE");
            uriBuilder.queryParam("target_site", "{target_site}");

            headers.setAccept(Collections.singletonList(MediaType.TEXT_PLAIN));
            HttpEntity<String> entity = new HttpEntity<>(headers);

           // ParameterizedTypeReference<String> responseType = new ParameterizedTypeReference<String>() {
           // };
            response =
                    restTemplateSSLIgnore.exchange(
                            uriBuilder.build().toUriString(),
                            HttpMethod.POST,
                            entity,
                            Object.class,
                            criteria);
            logger.info(response.getBody());
        }catch (Exception e){
            logger.error(e.getMessage(),e);
            return false;
        }
        return response.getBody();

Может ли кто-нибудь помочь мне с этим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...