微信小程序 对于后台接口返回值编码是 Gbk 格式的处理

场景:1、后台接口返回内容编码是 GBK
          2、微信开发工具自测没问题,真机测试出现乱码

解决方式:
         1、最方便方式:后台接口将返回内容的编码格式换成 utf-8
         2、前端通过接受数据流,第三方库解决(原因:跨部门合作,接口提供方排期较慢)

微信小程序解决方式记录:
   1、wx.request 请求设置 responseType 属性(responseType: 'arraybuffer')
   2、引入相关js:  encoding-indexes.js encoding.js(小程序不支持 TextDecoder 方法)
        返回数据处理
          let unit8Arr = new Uint8Array(data) ;
          let results = new encoding.TextDecoder('gbk').decode(unit8Arr);
       
备注:
    原生 js   let unit8Arr = new Uint8Array(data) ;
                 let results = TextDecoder('gbk').decode(x);   

参考:
   js gbk与UTF8 转换
   小程序实现GBK编码数据转为Unicode/UTF8

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值