收藏
回答

云开发有的云函数可以调,有的报500怎么回事?

问题模块 框架类型 问题类型 终端类型 AppID 基础库版本
云开发 小程序 Bug 工具 wx5dcdcb1dca1a99fe 2.7.5





最后一次编辑于  09-05  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

3 个回答

  • 超级券(星巴克肯德基各种礼品卡)
    超级券(星巴克肯德基各种礼品卡)
    09-05

    应该是云函数中有错误。自己慢慢调试

    09-05
    赞同
    回复 1
    • 慕筱溪
      慕筱溪
      09-06
      云函数有错误也不应该报500 吧,而且我是在页面调试好才封装云函数的
      09-06
      回复
  • 慕筱溪
    慕筱溪
    09-06

    原因已找到  async 和 await  使用出了问题

    09-06
    赞同
    回复
  • 快乐的🚗 单身汉
    快乐的🚗 单身汉
    09-06

    什么原因?没找出来,而且把集合的引用存到常量里面合适吗?

    09-06
    赞同
    回复 8
    • 慕筱溪
      慕筱溪
      09-06
      合不合适我不清楚,但是小程序可以直接在页面调数据库的API啊
      09-06
      回复
    • 快乐的🚗 单身汉
      快乐的🚗 单身汉
      09-06回复慕筱溪
      对,有类似的问题,云函数的问题你可以看看吗?https://developers.weixin.qq.com/community/develop/doc/0002c0282f05983bdf19f633651c00
      09-06
      回复
    • 慕筱溪
      慕筱溪
      09-06

      报 500 的原因是因为下面这里多了 await,删掉就好了


      if (event.type == "exInsert") { // 判断是否已存在数据
            return await targetDB.where(event.where).get().then(res => {
              if (res.data.length == 0){
                let data = event.data;
                return targetDB.add({
                  data: event.data
                })
              }
            });
          }


      09-06
      回复
    • 快乐的🚗 单身汉
      快乐的🚗 单身汉
      09-06回复慕筱溪
      可是数据库操作是异步不等它执行完毕根本不知道是否执行成功,
      09-06
      回复
    • 快乐的🚗 单身汉
      快乐的🚗 单身汉
      09-06回复慕筱溪
      哇,我的问题按照楼主的写法解决了。好像await的异步操作再return就可以了。
      09-06
      回复
    查看更多(3)
问题标签