当HTTP请求的返回状态为401时,如何解析Java中的响应正文

当HTTP请求的返回状态为401时,如何解析Java中的响应正文,第1张

当HTTP请求的返回状态为401时,如何解析Java中的响应正文

尝试以下方法而无需自定义处理程序。这个想法是从HttpStatusCodeException获取作为字符串的响应,然后可以将其转换为对象。对于转换,我使用了Jackson的ObjectMapper:

        try { restTemplate.postForObject(url, pojoInstance, responseClass);        } catch (HttpStatusCodeException e) { if (e.getStatusCode() == HttpStatus.UNAUTHORIZED) {     String responseString = e.getResponseBodyAsString();     ObjectMapper mapper = new ObjectMapper();     CustomError result = mapper.readValue(responseString,  CustomError.class); }        }

更新: 使用另一家工厂可能会有所帮助,因为默认工厂中存在一个与您的问题相关的错误(请参见下面的评论):

RestTemplate template = new RestTemplate(new HttpComponentsClientHttpRequestFactory());


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4989627.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存