z***@126.com
z***@126.com
  • 发布:2023-09-18 16:54
  • 更新:2023-09-18 20:10
  • 阅读:92

云函数中抛出自定义异常且携带自定义属性,怎么才能让客户端接收到完整的错误信息?

分类:uniCloud
            class error1 extends Error {  
                constructor(message) {  
                    super(message); // 调用父类的构造函数  
                    this.code = 666  
                    this.retry= true  
                    this.data = {  
                        retry: true  
                    }  
                }  
            }  
            throw new error1('自定义错误')

客户端抛出客户端捕获 或 云端抛出云端捕获时,错误信息都是完整的,都可以正确获取到 retry的值

但是云端抛出客户端捕获时,只有 errMsg 和 code 的信息,其他信息都没有了。

1.要怎么才能将信息完整传到客户端?
2.uni错误规范里可以携带data , 抛出自定义错误时,要如何把数据通过这个data携带?

2023-09-18 16:54 负责人:无 分享
已邀请:
DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

目前不支持,你这种场景可以通过错误码判断是不是要重试吧

  • z***@126.com (作者)

    只是举个例子,有些场景报错需要携带数据。现在云端的错误码好像还没统一成uni错误规范?数据库(含触发器)的错误只有 message 和 code ,不是errMsg 和 errCode,也不支持cause 和 data

    2023-09-18 20:37

  • DCloud_uniCloud_WYQ

    回复 z***@126.com: 需求了解了,我们补充下

    2023-09-19 11:42

要回复问题请先登录注册