批量代云开发模式,是在已有微信云开发的基础上,根据第三方平台场景提供的新模式。能够为第三方平台提供完整的微信云开发支持,并支持第三方平台统一管理云环境与资源、调用批量开发接口等,快速高效免鉴权地实现小程序的发布上线和迭代。 第三方平台可按照以下的流程进行使用。

# 开发前准备

# 申请平台型第三方平台

目前批量代云开发模式支持平台型第三方平台使用。请先进行申请,申请方式请参考平台型第三方平台申请和上线流程

# 开通批量代云开发

进入微信开放平台,登录后,在第三方平台模块下,选择所要开通并已审核通过的平台型第三方平台,在详情操作中,选择云开发模块,点击开通并同意相关协议后即可完成开通。 image.png 支持根据该服务商AppID创建一个新的腾讯云账号用来提供相应资源,也可以在开通时选择绑定已有腾讯云账号,扫码授权后完成绑定。 image.png

# 授权

  1. 第三方平台需在小程序权限中勾选 开发管理与数据分析权限
  2. 授权流程可参考 授权流程技术说明

# 解授权

小程序解除授权后,将无法访问第三方平台的云开发资源,请在解除授权之前,进行后端服务迁移。

# 开始开发

# 1.创建云环境

第三方开发者,可以通过创建环境接口,预先创建环境,供后续小程序使用。

# 2.环境共享

第三方开发者可使用环境共享接口将已创建的尚未共享给小程序的环境共享给客户小程序,供后续客户小程序调用该云环境资源。

注意:第三方平台创建的云开发环境仅可用于同客户主体的小程序使用,不同客户主体的云开发环境之间相互隔离。另外,云开发支持跨账号环境(资源)共享,即一个小程序的云开发环境资源可以授权共享给同客户主体下其他小程序 / 公众号使用。请参考环境共享

# 3.登陆控制台管理云环境

第三方平台可通过环境共享接口,将已创建的云环境共享给第三方平台预先创建的开发小程序。即可通过该开发小程序扫码登陆开发者工具,进行云环境管理操作。开发小程序申请请参考开发简介 注意:第三方平台可将已共享给客户小程序的环境再次通过环境共享接口共享给开发小程序,即可使用该开发小程序扫码登录开发者工具,在云开发控制台,管理被共享的云环境。

# 4.开发模版

第三方平台,在使用开发小程序登陆开发者工具后,即可进行代码模版的开发与发布。请注意,服务商代云开发模式下,所有的开发逻辑都是基于环境共享。请参考使用指南,需要在资源调用时,指明资源方环境ID(即上述步骤中由第三方平台创建的环境ID,可通过查询环境信息获取)。

// 声明新的 cloud 实例
var c1 = new wx.cloud.Cloud({
  // 资源方 AppID
  resourceAppid: 'wxe0e2656d74f0bff3',
  // 资源方环境 ID
  resourceEnv: 'test-f96b31',
})

// 跨账号调用,必须等待 init 完成
// init 过程中,资源方小程序对应环境下的 cloudbase_auth 函数会被调用,并需返回协议字段(见下)来确认允许访问、并可自定义安全规则
await c1.init()

// 完成后正常使用资源方的已授权的云资源
await c1.callFunction({
  name: '函数名',
  data: {},
})

# 5.常见问题

# 1)账号说明

  • 第三方APPID与腾讯云账号:第三方APPID是承载批量云开发模式的账号ID,关联对应唯一的腾讯云账号用来承载该模式下的所有云资源。

  • 开发小程序与客户小程序:开发小程序是第三方用来登陆开发者工具进行开发模版上传代码的小程序账号。第三方可以将已开发上传的模版部署给客户小程序使用。

# 2)批量云开发模式下的云环境与客户小程序已有的云环境是什么关系?

  • 由第三方在批量云开发模式下创建的云环境所有权隶属于第三方,是通过环境共享接口将该环境共享给客户小程序,使用时需遵从该环境共享规范。客户小程序原有通过云开发控制台创建的云环境隶属于该客户小程序,批量云开发模式下无法使用该云环境。若在代码中未显式指明资源方环境ID,则小程序后端资源调用的会是原有客户小程序云环境资源。

# 3)开发小程序是否要进行第三方授权?

  • 开发小程序无需进行第三方授权,即可为已获得的客户小程序开发模版并登录云开发控制台进行管理。

# 4)客户小程序无法登陆云开发控制台?

  • 若客户小程序在授权时,授予了云开发管理权限,则无法登录云开发控制台。

# 5)权限说明?

  • 当开发小程序中的extEnable设置为true时:通过开发小程序登录云开发控制台仅可管理被服务商共享给该客户小程序的云环境。
  • 当开发小程序中的extEnable设置为false时:通过开发小程序登录云开发控制台时,可管理该开发小程序自身所有的云环境,无法看到客户小程序的环境。

# 6)已完成环境共享,但是无法调用资源?

  • 服务商代云开发模式下,所有的开发逻辑都是基于环境共享。请参考使用指南,需要在资源调用时,指明资源方环境ID(即上述步骤中由第三方平台创建的环境ID,可通过查询环境信息获取)。

# 开放接口

现已提供如下接口进行开发管理:
环境管理
1.创建环境
2.查询环境信息
3.环境共享
4.查询共享的环境ID

云函数管理
1.批量上传云函数
2.删除云函数
3.获取云函数列表
4.获取触发器
5.批量更新触发器

云托管管理
1.开通云托管
2.新建云托管服务
3.查看云托管服务列表
4.删除云托管服务
5.新建云托管服务版本
6.批量新建云托管版本
7.删除云托管版本
8.查看云托管版本列表
9.查看云托管版本
10.配置云托管版本
11.分配流量比例
12.批量分配流量比例

数据库管理
1.查询集合
2.增加集合
3.删除集合
4.插入记录
5.删除记录
6.更新记录
7.查询记录
8.增加索引
9.删除索引
10.数据库导入
11.数据库导出
12.数据库导入/导出状态查询
13.数据库聚合
14.获取数据库操作权限
15.修改数据库操作权限

存储管理
1.获取文件上传链接
2.获取文件下载链接
3.删除文件
4.查看文件列表

静态网站管理
1.开通静态网站
2.查看静态网站状态
3.获取静态网站文件列表
4.获取上传静态网站文件链接

# 计费说明

批量云开发模式下,仅支持按量付费的计费方式,无需提前充值,只需为实际使用量付费。批量云开发模式下,暂无免费额度。 价格信息请参考按量付费