长整型长返回到前端,js出现精度丢失怎么办

  

前端后接口对接时,如果后台的id或者其他字段使用了长整型长,就很容易出现js丢失精度问题。用接口工具调用时,往往id返回都是对的,但是一到页面上,js就后缀000。
前端说返回的值有问题,F12看看!后端说没问题,邮递员看看。
这是js支持的问题,解决这个问题的办法很显然,返回字符串即可。
怎么实现呢,你可以直接将签证官对象的id改类成字符串型,但是会带来copyProperties的不便,所以见过很多人通过增加虚拟字段实现。下面是一个整体解决方案:(需要略微了解下春天的消息序列化原理,譬如MappingJackson2HttpMessageConverter是干嘛的)

  
      <李>   

    MainConfig(通常是主配置类,@ configuration注解的,用来导入一些基础配置)增加MessageConvert的重写extendMessageConverters:

      
     <代码> @Override
      公共空间extendMessageConverters (List 
      李   <李> CustomObjectMapper的实现:   
     <代码>公共类CustomObjectMapper延伸objectmap {
      公共CustomObjectMapper () {
      超级();
      SimpleModule SimpleModule=new SimpleModule ();
      simpleModule.addSerializer(长。类,ToStringSerializer.instance);
      simpleModule.addSerializer(长。类型,ToStringSerializer.instance);
      registerModule (simpleModule);
      }
      } 
      
  

这样,接口返回的时候,所有的长整型字段,会被当做字符串处理,自动加上双引号。
长整型长返回到前端,js出现精度丢失怎么办

长整型长返回到前端,js出现精度丢失怎么办