微信小程序扫码JSON解析失败

直接说重点吧,记录留存。
uni-app开发的小程序添加了扫码功能,代码如下:

// 点击扫码
bindScanTap() {
    uni.scanCode({
        success: (res) => {
            try {
                //判断二维码是否为队列二维码
                let research = JSON.parse(res.result)
                if (!(research.researchId && research.deptId && research.diseaseId)) {
                    util.showToast("解析失败")
                    return
                }
            } catch (e) {
                util.showToast("解析失败")
                return
            }
        },
        fail: () => {
            util.showToast("扫码失败")
        }
    })
}

扫码结果:

{
    "charSet": "utf-8",
    "result": "{"type":"4","researchId":22110,"deptName":"【测】xxx科","diseasesName":"体检1","projectName":"入组测试2","deptId":266,"diseaseId":221}",
    "codeVersion": 12,
    "errMsg": "scanCode:ok",
    "rawData": "77u/eyJ0eXB...2LCJkaXNlYXNlSWQiOjIyMX0=",
    "scanType": "QR_CODE"
}

安卓和iOS端App都没有问题,iOS端小程序也没有问题,小米手机扫码报错:

<SyntaxError: Unexpected token '', "{"type":""... is not valid JSON>
SyntaxError: Unexpected token '', "{"type":""... is not valid JSON
    at JSON.parse (<anonymous>)
    at Object.success (https://usr/app-service.js:3432:3766)

一开始以为是json字符中"转义的问题,于是给加上\",还是报错,又尝试了给字符串前后加上"'。折腾许久还是不行。
最后咨询AI解决:

Coze

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容