微信小程序SDK集成指南
1. 准备工作
在瑞数云上注册账号
访问 瑞数云管理界面 ,使用邮箱地址注册一个账号。
💡 提示:
请参考 如何获得瑞数云账号 中的步骤完成账号注册和商品购买。
选择接入方式
请阅读 如何选择瑞数云接入方式 的内容,选择适合的接入方式。
按照接入指南进行配置
请访问 接入指南 页面,依据所选择的接入方式,找到对应的接入指南。按照指南中的介绍完成接入配置。
下载微信小程序SDK
登录 瑞数云管理界面 ,进入 站点管理 页面,单击顶部的 微信小程序SDK, 下载得到名为 wx-sdk.js 的文件。
2. 开始集成微信小程序SDK
2.1 集成步骤
将 wx-sdk.js 文件复制到小程序的根目录(或其他任意路径,但需要确保导入时路径正确,这里以根目录为例) 。
在小程序的根目录中找到 app.js 文件, 在文件的 第一行 导入 wx-sdk.js。可以使用 import 导入或者使用 require 导入。
💡 提示:
请参考 附录 1 的内容。
导入的 wx-sdk.js 会返回一个 init 方法, 用于初始化 SDK。
init 方法有 4 个参数, 分别是 tenant_id、access_key、hosts 和可选的 options。
💡 注意!!!
请在 app.js 第一行导入小程序SDK,并尽早调用 init 方法, 否则可能会导致部分或全部请求无法添加令牌。
调用 init 方法并正确传递参数。
2.2 init方法参数和返回值说明
init 方法参数如下表所示。
参数 | 类型 | 必填 | 默认值 | 描述 |
---|---|---|---|---|
tenant_id | string | 是 | 企业管理 -> 企业ID | |
access_key | string | 是 | 站点管理 -> 全局配置 -> Access Key | |
hosts | Array<string> | 是 | 站点管理 -> 编辑站点 -> 域名 | |
options | Object | 否 | 非必填, 有async和timeout属性, 具体如下表 |
init 方法返回 Promise<boolean>
, 如果 init SDK 成功, Promise 回调返回 true, 否则返回 false。
options 参数对象属性如下表所示。
参数 | 类型 | 必填 | 默认值 | 描述 |
---|---|---|---|---|
async | boolean | 否 | false | false: 同步, 小程序在init完成之前不会发出请求, 如果在init完成之前发出请求会被存起来, 等到init完成之后再一起发出, 并且发出的请求一定会带上令牌。 true: 异步, 小程序在init完成之前也可以发出请求, 但是不能保证请求会带上令牌。 |
timeout | number | 否 | 5000 | 请求超时时间, 单位为毫秒。 |
3. 验证接入
在移动设备上打开集成了 SDK 的微信小程序,依次访问不同的链接。
登录 瑞数云管理界面 ,进入 日志管理 > 搜索 页面,在页面左上角 选择日志 下拉菜单中,选择 微信日志 (该日志名称中带有您在接入指南中创建的站点名称)。
在右方页面中存在刚才微信小程序产生的访问记录,说明 SDK 集成成功,小程序已成功接入瑞数云。
附录 1 导入示例
import 导入示例
import init from './wx-sdk'
const tenant_id = 'revol79602666'
const access_key = '1u9r4iko4sq8g8h8'
const hosts = ['demo.revolcloud.com']
init(tenant_id, access_key, hosts, {
async: false,
timeout: 3000,
}).then(res => {
console.log(res) // true or false
})require导入示例
require 语句的导入方式有两种。方式一如下所示。
const { init } = require('./wx-sdk')
const tenant_id = 'revol79602666'
const access_key = '1u9r4iko4sq8g8h8'
const hosts = ['demo.revolcloud.com']
init(tenant_id, access_key, hosts, {
async: false,
timeout: 3000,
})方式二与方式一效果相同,但简化为一行代码,如下所示。
require('./wx-sdk').init('revol79602666', '1u9r4iko4sq8g8h8', ['demo.revolcloud.com'])