介绍
云开发自定义模式允许您将已有的 MongoDB、对象存储桶、Serverless 云函数与云开发平台进行对接,对接之后,您可以使用云开发提供的 Open API 或者 SDK 来访问您的资源。
特性
- 云数据库对接已有的 MongoDB
- 云存储对接已有的对象存储桶
- 云函数对接已有的 Serverless 云函数
快速开始
提示
自定义模式正在内测中,内测队列里的用户可以创建自定义模式的环境,点击申请内测。
第 1 步:注册并登录腾讯云
前往腾讯云官网,注册腾讯云账号,然后登录账号。如有账号,可以直接登录。
第 2 步:新建自定义环境
前往 云开发 CloudBase 控制台,点击「新建」,选择「创建后端服务」:
选择地域,并输入环境名称,点击确认后即可创建环境;
第 3 步:配置您的资源
参考:
第 4 步:新建网站应用
选择「环境信息-访问服务」菜单;
点击「新建应用」;
输入需要部署的应用的信息,安全域名可填写本地开发域名,如
localhost:3000
点击「详情」即可查看应用的 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();