跳到主要内容

介绍

云开发自定义模式允许您将已有的 MongoDB、对象存储桶、Serverless 云函数与云开发平台进行对接,对接之后,您可以使用云开发提供的 Open API 或者 SDK 来访问您的资源。

特性

  • 云数据库对接已有的 MongoDB
  • 云存储对接已有的对象存储桶
  • 云函数对接已有的 Serverless 云函数

快速开始

提示

自定义模式正在内测中,内测队列里的用户可以创建自定义模式的环境,点击申请内测

第 1 步:注册并登录腾讯云

前往腾讯云官网,注册腾讯云账号,然后登录账号。如有账号,可以直接登录。

第 2 步:新建自定义环境

前往 云开发 CloudBase 控制台,点击「新建」,选择「创建后端服务」: 图片 图片

选择地域,并输入环境名称,点击确认后即可创建环境; 图片

第 3 步:配置您的资源

参考:

第 4 步:新建网站应用

  1. 选择「环境信息-访问服务」菜单; 图片

  2. 点击「新建应用」;

  3. 输入需要部署的应用的信息,安全域名可填写本地开发域名,如 localhost:3000 图片

  4. 点击「详情」即可查看应用的 Client ID 信息; 图片 图片

第 5 步:使用新版 SDK 访问云开发

安装依赖:

npm install @cloudbase/oauth
npm install @cloudbase/paas-js-sdk

使用 SDK 访问云开发:

import { CloudbaseOAuth } from "@cloudbase/oauth";
import * as tcbpaas from "@cloudbase/paas-js-sdk";

const envId = "<环境ID>";
const clientId = "<应用ClientID>";

// 初始化 SDK
const client = new CloudbaseOAuth({
apiOrigin: `https://${envId}.ap-shanghai.auth.tcloudbase.com`,
clientId: clientId,
});
tcbpaas.init({
env: envId,
baseURL: `https://${envId}.ap-shanghai.api.tcloudbase.com`,
oauthInstance: client,
});

// 实现匿名登录方法
async function signInAnonymously() {
const result = await client.authApi.hasLoginStateSync();
if (!result) {
await client.authApi.signInAnonymously();
}
}

async function request(options) {
await signInAnonymously();
return tcbpaas.request(options);
}

// 拼接请求URL
const DB_INSTANCE = "-";
const COLLECTION_NAME = "test";
const DB_BASE_URL = `/v1/databases/${DB_INSTANCE}/collections/${COLLECTION_NAME}`;

// 查询云数据库方法
async function getAllDocs() {
const result = await request({
method: "POST",
path: `${DB_BASE_URL}/query`,
body: {
query: {},
offset: 0,
limit: 100,
},
query: {
mode: "JSON",
},
enableAbort: true,
timeout: 3000,
});
console.log(result);
}

// 先匿名登录,再查询数据库
signInAnonymously();
getAllDocs();