共享云资源小程序初始化失败#784
hx-6gg4stxy183d472a
A小程序绑定云资源 const cloudbase = require("@cloudbase/wx-cloud-client-sdk"); await wx.cloud.init({env: "云开发ID"}); const client = cloudbase.init(wx.cloud); const models = client.models; A小程序正常
B小程序共享A小程序云资源 const cloudbase = require("@cloudbase/wx-cloud-client-sdk"); var c1 = new wx.cloud.Cloud({ resourceAppid: 'A小程序ID',// 资源方 AppID resourceEnv: '云开发ID', // 资源方环境 ID}) await c1.init(); //下面两条报错 (Error: errCode: -1 | errMsg: Cloud API isn't enabled, please call wx.cloud.init first请先调用 wx.cloud.init() 完成初始化后再调用其他云 API。) const client = cloudbase.init(wx.cloud); const models = client.models;
//如果不使用cloudbase使用以下代码正常获取 await c1.database().collection("Poem").get()
请问共享小程序云服务开发中如何初始化cloudbase
这里可能有个问题,c1 是新创建的实例,才是正确的资源方云实例,cloudbase.init() 应该传入 c1 而不是 wx.cloud,更改后试试看
如果改成 const client = cloudbase.init(c1); 报错:Error: Generating default gateway base url failed: env not found
const client = cloudbase.init(c1, { envId: '' }); c1的上下文没有拿到envId,手动传一下试试
小T
云开发环境ID
hx-6gg4stxy183d472a
问题描述
A小程序绑定云资源
const cloudbase = require("@cloudbase/wx-cloud-client-sdk");
await wx.cloud.init({env: "云开发ID"});
const client = cloudbase.init(wx.cloud);
const models = client.models;
A小程序正常
B小程序共享A小程序云资源
const cloudbase = require("@cloudbase/wx-cloud-client-sdk");
var c1 = new wx.cloud.Cloud({
resourceAppid: 'A小程序ID',// 资源方 AppID
resourceEnv: '云开发ID', // 资源方环境 ID})
await c1.init();
//下面两条报错 (Error: errCode: -1 | errMsg: Cloud API isn't enabled, please call wx.cloud.init first请先调用 wx.cloud.init() 完成初始化后再调用其他云 API。)
const client = cloudbase.init(wx.cloud);
const models = client.models;
//如果不使用cloudbase使用以下代码正常获取
await c1.database().collection("Poem").get()
请问共享小程序云服务开发中如何初始化cloudbase