t***@hotmail.com
t***@hotmail.com
  • 发布:2021-12-14 10:29
  • 更新:2021-12-16 18:27
  • 阅读:923

【报Bug】部分db操作失败 - TOKEN_INVALID_WRONG_TOKEN 未能获取当前用户信息:30204 | token校验未通过

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: macOS Monterey 12.0.1

HBuilderX类型: 正式

HBuilderX版本号: 3.2.16

手机系统: iOS

手机系统版本号: iOS 15

手机厂商: 苹果

手机机型: iPhone 13, iPhone 6

页面类型: nvue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

朋友圈表:

{  
    "bsonType": "object",  
    "required": ["feed_id", "user_id", "content", "comment_type"],  
    "permission": {  
        "read": true,  
        "create": true,  
        "update": true,  
        "delete": true  
    }  
.....

评论表

{  
    "bsonType": "object",  
    "required": ["feed_id", "user_id", "content", "comment_type"],  
    "permission": {  
        "read": true,  
        "create": true,  
        "update": true,  
        "delete": true  
    },  
    "properties": {  
        "_id": {  
            "description": "存储文档 ID(文章 ID),系统自动生成"  
        },  
        "feed_id": {  
            "bsonType": "string",  
            "description": "feed ID,feeds 表中的`_id`字段"  
        },  
        "user_id": {  
            "bsonType": "string",  
            "description": "评论者ID,参考`uni-id-users` 表",  
            "forceDefaultValue": {  
                "$env": "uid"  
            },  
            "foreignKey": "uni-id-users._id"  
        },  
        "user_nickname": {  
            "bsonType": "string",  
            "description": "评论者昵称"  
        },  
        "content": {  
            "bsonType": "string",  
            "description": "评论内容",  
            "title": "评论内容",  
            "trim": "both"  
        },  
        "like_count": {  
            "bsonType": "int",  
            "description": "评论喜欢数、点赞数",  
            "defaultValue": 0  
        },  
        "type": {  
            "bsonType": "int",  
            "description": "回复类型: 0 针对文章的回复  1 针对评论的回复",  
            "defaultValue": 0  
        },  
        "to_user_id": {  
            "bsonType": "string",  
            "description": "被回复的评论用户ID,comment_type为1时有效",  
            "foreignKey": "uni-id-users._id"  
        },  
        "to_nickname": {  
            "bsonType": "string",  
            "description": "回复评论者昵称"  
        },  
        "to_comment_id": {  
            "bsonType": "string",  
            "description": "被回复的评论ID,comment_type为1时有效",  
            "foreignKey": "feed-comments._id"  
        },  
        "comment_date": {  
            "bsonType": "timestamp",  
            "description": "评论发表时间",  
            "forceDefaultValue": {  
                "$env": "now"  
            }  
        },  
        "comment_ip": {  
            "bsonType": "string",  
            "description": "评论发表时 IP 地址",  
            "forceDefaultValue": {  
                "$env": "clientIP"  
            }  
        }  
    }  
}  

操作步骤:
  1. 在真机活着模拟器上进行涉及 (create/update/delete)
  2. 报错误信息, 引导到登陆页面
  3. 登陆后重新操作, 再次报错误信息 (一直循环)

预期结果:

登陆后进行db更新的操作可成功执行

实际结果:

报错误信息, 引导到登陆页面

bug描述:

部分数据库操作在真机操作失败, 在h5端没有问题, 显示如下信息.
失败的操作在真机100%可复现 在H5没有问题
错误提示以下信息:

09:56:30.753  onDBError, [Object] {"code":"TOKEN_INVALID_WRONG_TOKEN","message":"未能获取当前用户信息:30204 | token校验未通过"}  at common/appInit.js:80   
09:56:30.776  TOKEN_INVALID_WRONG_TOKEN, 未能获取当前用户信息:30204 | token校验未通过 at common/appInit.js:85 __ERROR > 

已尝试的排查:

  1. 换账号, 没有效果
  2. 换手机, 没有效果
  3. iOS模拟器上也是一样
  4. 已经把所有操作的对象表格的perimssion改成全true, 无效
  5. qq群里管理员说可能是tokenSecret跟别的项目混了, 我觉得不是, 因为这个问题只在手机端有, h5完全不会发生
  6. 真机端也不是所有操作都会, 比如我可以对表A进行create操作, 但是对表B就会报错, 然而表A和表B的permission都是一样的 (见代码实例)· 参照录屏附件, 我对朋友圈进行点赞, 删除操作可以执行, 只有发评论会出问题, 而且只在手机端有问题
2021-12-14 10:29 负责人:DCloud_uniCloud_WYQ 分享
已邀请:
DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

两个表permission虽然一样但是评论表有个forceDefaultValue设置为了用户的uid,登录状态不对的话是没法插入的

DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

方便我远程看一下吗?加我QQ 2292434668

  • len168com

    3.6.3也有这个问题 本地真机运行出现 换云端连接不出现

    2022-09-23 16:22

  • DCloud_uniCloud_WYQ

    回复 len168com: 检查一下你校验的token内容是不是一致,还有tokenSecret是不是云端本地不一致

    2022-09-23 18:17

t***@hotmail.com

t***@hotmail.com (作者) - like a boss

跟@DCloud_UNI_WYQ 调试的结果 认为是Nvue页面不会请求本地云函数导致 . 该问题应该在hbuilderx 3.3.1 中修复

t***@hotmail.com

t***@hotmail.com (作者) - like a boss

hbuilderx 3.3.1 已修复此问题

谢谢@DCloud_UNI_WYQ的帮助! 非常迅速!

该问题目前已经被锁定, 无法添加新回复