关于java接收json数据为空的解决方案

关于java接收json数据为空的解决方案


今天老大给了一个需求,接收外部参数,存到本地数据库中,但是我写完代码之后通过测试工具进行测试的时候发现后台获取的参数全部为空,或者参数不匹配,代码如下。
1、java代码

@RequestMapping(value = "/pushCa_tszsxx", method = RequestMethod.POST)
    public ReturnValue pushCa_tszsxx(@RequestBody Ca_tszsxx ca_tszsxx){
        log.info("推送证书信息接口请求信息:"+ca_tszsxx.toString());
        try {
            return this.caService.pushCa_tszsxx(ca_tszsxx);
        }catch (Exception e) {
            log.error(e.getMessage(), e);
            ReturnValue returnValue = ReturnValue.newErrorInstance("推送证书信息接口发生异常,请联系管理员!");
            return returnValue;
        }
    }

2、postman请求参数
在这里插入图片描述
3、定位问题
发现问题之后我在网上找了好久都没有解决,最后给同事要了他们之前写的代码通过比较发现代码没问题,考虑是参数传递的时候处理问题,相同时要他们之前通过测试工具测试的时发的请求,最后发现问题所在他们在发送请求的时候都会在header中指定Content-Type参数。按照他们的方法在请求时向header中添加Content-Type参数之后问题解决。
在这里插入图片描述

Content-Type:application/json;charset=utf-8

注:header中Content-Type参数的值一定要是‘application/json;charset=utf-8’,若不写charset=utf-8后台会将传递的参数会全部赋给对象中的第一个字段。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
至于原因的话,我现在也没搞清楚。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值