微信小程序 wx.request 后端返回数据超出类型安全范围解决办法

Posted Stack Ocean

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序 wx.request 后端返回数据超出类型安全范围解决办法相关的知识,希望对你有一定的参考价值。

遇到问题:

请求后端接口,发现返回的数据,文章的id被截断了,导致无法根据文章的id去获取文章详情,需要解决数据超出类型长度范围的问题。

解决办法:

  1. 联系后端,将接口返回的数据类型从 int 修改为 字符串 类型,这样就不会超出类型长度导致被截断了。

  2. 使用一些 包装类型处理包,如npm包中的 json-bigint,将请求返回的数据进行包装,使用的时候转成字符串使用。

3.使用数组进行分段处理,如下,使用时再转成拼接为字符串

4.采用正则,在JSON.parse之前将数值转换加上字符串双引号,这样就会解析成字符串了,如下图

题外话:如果是单页面程序中使用axios请求则需要在axios处理返回数据之前将数据进行包装处理。

axios处理方法:https://blog.csdn.net/Aaa_Liao/article/details/106982675

实际案例:
解决问题:

解决如下:
环境: 微信小程序开发
使用处理包装包:json-bigint
1.对请求数据手动处理,不使用微信请求的自动转换。

提示:

2.传给另外一个页面时的处理



3.页面收到数据,发起请求

以上是关于微信小程序 wx.request 后端返回数据超出类型安全范围解决办法的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序wx.request组件的那些坑

微信小程序wx.request的回调使用

微信小程序简要学习

小程序wx.request能自己封装吗

微信小程序 wx.request POST请求------中文乱码问题

微信小程序 wx.request