postman 遇到的坑

postman 遇到的坑

在 java web 的日常开发工作中,别告诉我你还没有使用过类似 postman 这样的接口请求测试工具。

我目前使用最多的几个工具就是 Intellij IDEA,postman,Chrome,Sublime 3,Sequel pro,DataGrip。

闲话不多说,进入正题,现在在一家互联网公司打杂(写接口,与数据库打交道,CRUD,强业务支撑,复杂的业务逻辑)。代码中难免有涉及到金额的时候;既然是金额,小数点后保留两位:这种显示需求不要太多。甚至还有遇到显示小数点后低位的需求。

至于 java 里面怎么实现2位小数,网络资源无数。其中 BigDecimal虽说性能消耗较大,但是是比较推崇的数据类型。

下面的input.getSoldPrice() 得到的数据不一定是2位,通过 BigDecimal.setScale()方法即可实现。

new BigDecimal(input.getSoldPrice()).setScale(2, BigDecimal.ROUND_HALF_UP)

写好接口后,然后使用 postman 自测,可以看到下面的第二个数据 price 并不是2位小数。难道 BigDecimal 有问题?持续懵逼中。转而甚至考虑换用其他实现方法去展示2位小数。最终在 postman 的自测页面得不到期望的数据 netAmount= 220.00 GrossAmount= 233.20
postman 遇到的坑
代码调试,然后才发现调试时显示的 netAmount=220.00,没有问题,可是最后在 postman 页面看到的结果却不是带有2位小数,而是一个整数
然后发现post只是帮把数据格式化了,点一下raw就能看到实际数据了postman 遇到的坑
这种问题如果代码带出来的值没有问题,postman显示有问题不用担心,代码没有问题,是浏览器或者postman的原因