跳到主要内容

初始化 SDK

在创建数据模型中,自动会生成多端的操作 SDK,例如 小程序/云函数/Web 等,可以参考如下文档进行初始化和使用。

在小程序中调用

安装依赖

方式一:下载 SDK

可以直接把下方的 SDK 链接文件下载到小程序代码的目录(一般是 miniprogram 目录)中,保存为 wxCloudClientSDK.umd.js

https://tcb.cloud.tencent.com/wx-cloud-client-sdk/1.2.1/wxCloudClientSDK.umd.js

方式二:通过 npm 引入

微信开发者工具使用 npm 指引

在小程序 package.json 所在的目录(一般是 miniprogram 目录)执行命令安装 npm 包:

npm install @cloudbase/wx-cloud-client-sdk --save

然后点击微信开发者工具工具栏上的“工具” -> “构建 npm”。

初始化和使用 SDK

在 app.js 中加入如下代码:

// 如果是下载 SDK 的方式,改成 const { init } = require('./wxCloudClientSDK.umd.js')
const { init } = require("@cloudbase/wx-cloud-client-sdk");

// 指定云开发环境 ID
wx.cloud.init({
env: "some-env-id", // 当前的云开发环境 ID
});

const client = init(wx.cloud);
const models = client.models; // 或者也可以直接从 wx.cloud.models 上获取,这种方式的类型提示会弱一些

// 接下来就可以调用 models 上的数据模型增删改查等方法了
// models.post.create({
// data: {
// body: "你好,世界👋\n\nfrom china",
// title: "你好,世界👋",
// slug: "hello-world-cn",
// },
// }).then(({ data } => { console.log(data)}))

在云函数中调用

云函数中使用需在对应云函数目录下安装以下依赖:

  • @cloudbase/js-sdk: 2.8.3-beta.0 以上的版本
  • @cloudbase/adapter-node: 1.0.2 以上的版本

安装依赖

在创建云函数时会在云函数目录下默认新建一个 package.json 并提示用户是否立即本地安装依赖。请注意云函数的运行环境是 Node.js,因此在本地安装依赖时务必保证已安装 Node.js,同时 nodenpm 都在环境变量中。如不本地安装依赖,可以用命令行在该目录下运行:

npm install --save @cloudbase/js-sdk@2.8.3-beta.0 @cloudbase/adapter-node@1.0.2

初始化和使用 SDK

在云函数中调用数据模型 SDK 之前,需要执行一次初始化方法:

const cloudbase = require("@cloudbase/js-sdk");
// 引入 node.js 端的适配器,详情请参考 https://docs.cloudbase.net/api-reference/webv3/adapter#%E4%B8%80%E5%A5%97%E4%BB%A3%E7%A0%81%E5%A4%9A%E7%AB%AF%E9%80%82%E9%85%8D
const adapter = require("@cloudbase/adapter-node");

const { sessionStorage } = adapter.genAdapter();

cloudbase.useAdapters(adapter);

const app = cloudbase.init({
env: "your-env-id", // 需替换为实际使用环境 id
});
/**
* auth 初始化的时候要传入storage 和 captchaOptions.openURIWithCallback
* 否则会用默认的,依赖于平台,在 nodejs 环境报错
*/
const auth = app.auth({
storage: sessionStorage,
captchaOptions: {
openURIWithCallback: () =>
console.log("open uri with callback"),
},
});

exports.main = async (event, context) => {
await auth.signInAnonymously(); // 或者使用其他登录方式

const models = app.models;
// 接下来就可以调用 models 上的数据模型增删改查等方法了
// models.post.create({
// data: {
// body: "你好,世界👋\n\nfrom china",
// title: "你好,世界👋",
// slug: "hello-world-cn",
// },
// }).then(({ data } => { console.log(data)}))
};

在 Web 页面中调用

安装依赖

在 Web 项目的根目录下,使用 npm 或 yarn 安装所需的包:

npm install @cloudbase/js-sdk@beta --save

初始化和使用 SDK

// 引入 SDK
const app = cloudbase.init({
env: "your-cloud-env-id", // 替换为你的云开发环境 ID
clientId: "your-cloud-env-id", // 替换为你的云开发环境 ID
});
const auth = app.auth({
persistence: "local",
});
await auth.signInAnonymously(); // 或者使用其他登录方式

const models = app.models;

// 接下来就可以调用 models 上的数据模型增删改查等方法了
// 示例:创建一个 post 数据记录
// models.post.create({
// data: {
// body: "你好,世界👋\n\nfrom china",
// title: "你好,世界👋",
// slug: "hello-world-cn",
// },
// }).then(({ data } => { console.log(data)}))