uni-app云函数uni-sec-check出现appid or provider invalid?

uni-app云函数uni-sec-check出现appid or provider invalid?

appid是正确的,appsecret也是正确的,一直怀疑是不是provider的问题,但也没有找到为什么,请大佬解答!

![图片](https://www.itying.com/uniimg.php?url=https://img-cdn-tc.dcloud.net.cn/uploads/questions/20241226/0d3227f7bc92e65e0fe13cec234749b8.png)

![图片](https://www.itying.com/uniimg.php?url=https://img-cdn-tc.dcloud.net.cn/uploads/questions/20241226/41314769c5a4bd8d90a8be0a4ce3c416.png)

更多关于uni-app云函数uni-sec-check出现appid or provider invalid?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

new UniSecCheck 内传的appId是dcloudAppid的值(__UNI__开头的那个),不是微信小程序的appid

更多关于uni-app云函数uni-sec-check出现appid or provider invalid?的实战教程也可以访问 https://www.itying.com/category-93-b0.html


官方文档在这里没有appid的传值,如果我删了也会报这个错~

回复 2***@qq.com: 如果不传appId也是可以的,但前提是context内有APPID的值才行,本地运行的时候,context内是有没有APPID的

但如果传appId,则值是dcloudAppid,不是微信小程序appid

回复 DCloud_uniCloud_VK: 好的,我试试,谢谢

解决了吗,我的也是这样,求支招

后面我没有用云函数了,让后端调了腾讯云的内容安全识别验证

遇到 uni-app 云函数 uni-sec-check 报错 “appid or provider invalid” 通常意味着在调用云函数时,提供的 appidprovider 参数不正确或缺失。uni-sec-check 是 DCloud 提供的一个安全校验云函数,用于在服务器端校验客户端请求的安全性。

以下是一些可能的解决方案,包括如何正确配置和调用 uni-sec-check 的代码示例:

1. 确认 AppID 和 Provider 配置

首先,确保你的项目中已经正确配置了 AppIDProvider。这些通常在 manifest.json 文件中配置,或者在云函数的配置中指定。

2. 检查云函数调用代码

确保在调用 uni-sec-check 时,传递了正确的参数。以下是一个简单的示例,展示如何在 uni-app 中调用云函数:

// 调用云函数uni-sec-check的示例代码
uni.cloud.callFunction({
  name: 'uni-sec-check',
  data: {
    action: 'checkLoginState', // 根据需要传递的action
    data: {
      // 这里可以传递需要校验的数据,例如用户的token等
      token: uni.getStorageSync('user_token')
    },
    appid: 'your-app-id', // 确保这里填写了正确的AppID
    provider: 'uniCloud' // 通常这里填写uniCloud,除非你有特定的云服务商配置
  },
  success: function (res) {
    console.log('校验成功:', res.result);
  },
  fail: function (err) {
    console.error('校验失败:', err);
    if (err.message.includes('appid or provider invalid')) {
      console.warn('请检查AppID和Provider是否正确配置');
    }
  }
});

3. 检查云函数配置

在 DCloud 的云开发控制台中,检查 uni-sec-check 云函数的配置,确保 AppIDProvider 已被正确设置。

4. 清理和重建项目

有时候,项目中的缓存或配置错误可能导致此类问题。尝试清理项目并重新构建:

# 清理项目
npm run clean

# 重建项目
npm run dev

5. 查看文档和社区

如果上述步骤仍然无法解决问题,建议查阅最新的 uni-app 官方文档 或相关社区和论坛,看看是否有其他开发者遇到并解决了类似的问题。

通过上述步骤,你应该能够定位并解决 “appid or provider invalid” 的错误。如果问题依旧存在,可能需要更详细地检查你的项目配置或联系 DCloud 的技术支持。

回到顶部