Spring RestTemplate 利用拦截器打印请求参数和返回状态

在项目中遇到使用Spring RestTemplate请求服务接口返回400错误,通过添加拦截器检查请求参数和响应状态进行调试。本文介绍了如何创建拦截器类以及两种将其添加到RestTemplate的方法,帮助解决请求问题。
摘要由CSDN通过智能技术生成

  最近在项目中遇到用RestTemplate请求另外一个服务接口,发现总是报400返回。或许由于对400错误不是很了解,调试了很久。但是过了好一段时间,发现自己进展不大,由此,咨询下了经验丰富的人,也解决了RestTemplate请求另外服务接口的方法。

   很多人都基本用Spring注入的RestTemplate,代码如下:

 @Autowired
    private RestTemplate restTemplate;

但是在请求的时候,发现总是返回400.应该是参数问题,然后就采用别人帮忙写的一个类,去检查自己请求参数是否完整,返回参数,定义一个类

LoggingClientHttpRequestInterceptor去实现
ClientHttpRequestInterceptor

代码结构如下:

public class LoggingClientHttpRequestInterceptor implements ClientHttpRequestInterceptor {

    private final static Logger LOGGER = LoggerFactory.getLogger(LoggingClientHttpRequestInterceptor.class);

    @Override
    public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) throws IOException {
        traceRequest(reques
  • 7
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 21
    评论
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值