收藏
回答

subscribeMessage.send errCode: -504002报错?

Error: cloud.callFunction:fail Error: errCode: -504002 functions execute fail | errMsg: TypeError: Do not know how to serialize a BigInt

调用订阅消息后测试消息可以发送成功,但是返回值报错Do not know how to serialize a BigInt,无法判断是否发送成功。


2022-05-01 解决方法:云函数的返回值不要返回result,直接返回result.errCode,就不会报错。原因是直接返回result被序列化导致报错(其实就是bug),所以返回result.errCode足以用于判断!

最后一次编辑于  2022-05-01
回答关注问题邀请回答
收藏

13 个回答

  • 陆陆陆
    陆陆陆
    2022-03-23

    这个错误是怎么回事呢?是官方的BUG吗?

    2022-03-23
    有用
    回复
  • 龙吟
    龙吟
    2022-03-16

    这个问题我也遇到了,消息发出去了,但是报错

    cloud function service error code -504002, error message TypeError: Do not know how to serialize a BigInt

        at JSON.stringify (<anonymous>)

        at callback (:55914/var/runtime/node12/CallbackContext.js:31)

        at :55914/var/runtime/node12/CallbackContext.js:81

        at :55914/var/runtime/node12/Runtime.engine.js:237

        at processTicksAndRejections (:55914/appservice/internal/process/task_queues.js:97); at cloud.callFunction api; 

        at new u (VM857 WAService.js:2)

        at d (VM857 WAService.js:2)

        at f (VM857 WAService.js:2)

        at Function.success (VM857 WAService.js:2)

        at VM857 WAService.js:2

        at x (VM857 WAService.js:2)

        at i.<anonymous> (VM857 WAService.js:2)

        at i.emit (VM857 WAService.js:2)

        at Ea (VM857 WAService.js:2)

    2022-03-16
    有用
    回复 6
    • .
      .
      发表于移动端
      2022-03-16
      返回值bug,被序列化了,直接把返回值的errCode return出去就不会报错了。
      2022-03-16
      1
      回复
    • 西塘旧桥
      西塘旧桥
      2022-03-17回复.
      你好,能详细讲吗
      2022-03-17
      回复
    • 还是小胖子
      还是小胖子
      2022-03-18回复.
      楼主,求教,最好可以把代码贴一下,嘿嘿
      2022-03-18
      回复
    • 你好
      你好
      2022-03-22
      求 解决
      2022-03-22
      回复
    • 🦚朝歌
      🦚朝歌
      2022-04-01回复.
      求解决
      2022-04-01
      回复
    查看更多(1)
  • 见龙在田
    见龙在田
    2022-03-16

    这个问题我昨天也遇到了,虽然消息发送成功了。但是云函数就退出了。所以效果就是我在云函数中准备给一批用户发送订阅消息,结果就是发送了第一个用户后,其它用户就收不到了。这个问题还是必须解决掉。我也还没有找到原因。不知道怎么回事?

    2022-03-16
    有用
    回复 4
    • 见龙在田
      见龙在田
      2022-03-16
      exception occured {
        "errCode": -504002,
        "errMsg": "callFunction:fail -504002 functions execute fail. requestID t_1647352800638_12041-17f8de0ebd5_2, TypeError: Do not know how to serialize a BigInt\n at JSON.stringify (<anonymous>)\n at callback (/var/runtime/node12/CallbackContext.js:31:23)\n at /var/runtime/node12/CallbackContext.js:81:16\n at /var/runtime/node12/Runtime.engine.js:237:13\n at processTicksAndRejections (internal/process/task_queues.js:97:5)"
      }
      2022-03-16
      回复
    • .
      .
      发表于移动端
      2022-03-16回复见龙在田
      返回值bug,被序列化了,直接把返回值的errCode return出去就不会报错了。
      2022-03-16
      1
      回复
    • 党军
      党军
      2022-03-20
      一样的问题,就是不知道怎么弄,但是我的不影响发送,
      2022-03-20
      回复
    • 党军
      党军
      2022-03-20回复.
      data本身具有序列化功能,但还是想不到解决办法。
      2022-03-20
      回复

正在加载...

登录 后发表内容