QQ小程序 初始化
在小程序端开始使用云能力前,需先调用 qq.cloud.init 方法完成云能力初始化(注意小程序需先开通云服务,开通的方法是点击工具栏左上角的 “控制台” 按钮)。因此,如果要使用云能力,通常我们在小程序初始化时即调用这个方法
小程序端初始化
qq.cloud.int方法的定义如下:
function init(options): void
qq.cloud.init 方法接受一个可选的options参数,方法没有返回值。方法只能调用一次,多次调用时只有第一次调用生效。
qq.cloud.init
方法接受一个可选的 options 参数,方法没有返回值。方法只能调用一次,多次调用时只有第一次调用生效。
options 参数定义了云开发的默认配置,该配置会作为之后调用其他所有云 API 的默认配置,options提供的可选配置如下:
字段 | 数据类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
env | string\object | 是 | 后续 API 调用的默认环境配置,传入字符串形式的环境 ID 可以指定所有服务的默认环境,传入对象可以分别指定各个服务的默认环境,见下方详细定义 | |
traceUser | boolean | 否 | false | 是否在将用户访问记录到用户管理中,在控制台中可见 |
当 env 传入参数为对象时,可以指定各个服务的默认环境,可选字段如下:
字段 | 数据类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
database | string | 否 | 空 | 数据库 API 默认环境配置 |
storage | string | 否 | 空 | 存储 API 默认环境配置 |
functions | string | 否 | 空 | 云函数 API 默认环境配置 |
注意:env 设置只会决定小程序端 API 调用的云环境,并不会决定云函数中的 API 调用的环境,在云函数中需要通过 qq-server-sdk 的 init 方法重新设置环境。
示例代码:
// 初始化示例
const tcb = require("qq-server-sdk");
//云函数下指定环境
tcb.init({
env: "xxx"
});
云函数端初始化
init 方法的定义如下:
function init(options): void
init 方法接受一个可选的 options 参数,方法没有返回值。方法只能调用一次,多次调用时只有第一次调用生效。 options 参数定义了云开发的默认配置,该配置会作为之后调用其他所有云 API 的默认配置,options 提供的可选配置如下:
字段 | 数据类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
env | string | 是 | 后续 API 调用的默认环境配置,传入字符串形式的环境 ID ,不填则使用默认环境。 |
注意:env 设置只会决定本次云函数 API 调用的云环境,并不会决定接下来其他被调云函数中的 API 调用的环境,在其他被调云函数中需要通过 init 方法重新设置环境。
API 风格
云开发的 API 风格与小程序框架组件和 API 风格有所差异,接口同时支持Promise风格和callback风格。 在传入 API 的 Object 参数中,如果传入了 success、fail、complete 字段,则我们认为是采用回调风格,API 方法调用不返回 Promise。如果传入 API 的 Object 参数中 success、fail、complete 这三个字段都不存在,则我们认为是采用Promise风格,API 方法调用返回一个 Promise,Promise resolve 的结果同传入 success 回调的参数,reject 的结果同传入 fail 的参数。
注意事项
如果 init 时不传 env 参数,过去 API 调用将默认请求到第一个创建的环境,但这种方式并不总是预期的,因此这种方式已废弃,请务必明确传入 env 参数