1. 程式人生 > 其它 >axios請求資料資料型別為Long的資料,資料精度損失

axios請求資料資料型別為Long的資料,資料精度損失

在前後端分離的開發中,在使用axios進行請求時,會發現有些資料型別如Long,會發現出現了精度損失的問題。
在後端開發中的通過雪花演算法生成的ID等等欄位,會在axios的請求中發生精度損失。
如通過雪花演算法生成的ID為“1516392293853065218”,在通過axios的請求下會變成“1516392293853065200”,損失了精度。
遇到這種問題,最好的解決辦法就是將後端的Long或者bigint型別Bean轉化為String,從而解決這個問題。
解決方案如下:


@Configuration
public class GlobalConfig {

   @Bean("jackson2ObjectMapperBuilderCustomizer")
   public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer(){
       return jacksonObjectMapperBuilder -> jacksonObjectMapperBuilder
               .serializerByType(BigInteger.class, ToStringSerializer.instance)
               .serializerByType(Long.class,ToStringSerializer.instance)
               .serializerByType(Long.TYPE,ToStringSerializer.instance);
   }
}