# 操作场景

本文档主要介绍如何使用 SDK 主要操作进行开发,更多详情可参考开发指南。

# 操作步骤

# 初始化云开发能力

若需要使用云开发的其他能力,需要先进行初始化。示例代码如下:

<script src="https://imgcache.qq.com/qcloud/tcbjs/$version/tcb.js"></script>
<script>
  tcb.init({
    env: 'example-envid' //当前环境ID
  })
</script>

TIP

  • 代码中的 $version 为 SDK 版本号,example-envid 为环境 ID。
  • 建议您从控制台的添加应用弹窗中单击复制,得到的代码中包含 SDK 实际路径和您当前的环境 ID。

# 登录授权

初始化完成后,您需要完成登录授权。示例代码如下:

var auth = app.auth();
auth
  .weixinAuthProvider({
    appid: 'example-appid', //微信应用appid
    scope: 'snsapi_type' //网页授权类型
  })
  .signIn((err, res) => {});

TIP

  • 您需要将代码中 example-appid 修改为您微信应用的 appid 。
  • snsapi_type 为网页授权类型,可选值为 snsapi_base(公众平台,只获取用户的 openid)、snsapi_userinfo(公众平台,获取用户的基本信息)和 snsapi_login(开放平台网页授权)。

# 操作数据库

您可以完成对数据库基础的 CRUD 及服务端时间(serverDate)、正则查找(regExp)和地理位置(geo)等特殊数据结构的使用。示例代码如下:

var db = app.database();

db.collection('blog')
  .get()
  .then(res => {
    var data = res.data;
    console.log(data);
  });

更多详情请参考数据库相关 开发指南 (opens new window)

# 操作文件存储

您可以完成文件上传、获取下载链接或者删除文件等操作。示例代码如下:

// 上传文件
app.uploadFile({
  filePath: (<HTMLInputElement>document.getElementById('file')).files[0],
  cloudPath: 'cos.jpeg',
  onUploadProgress: (progressEvent) => {
    let percentCompleted = Math.round((progressEvent.loaded * 100) / progressEvent.total);
    console.log('uploadFile progress: ' + percentCompleted, progressEvent);
  }
}, function (err, res) {

});

// 获取下载链接
app.getTempFileURL({
  fileList: ['cloud://example.jpeg']    //fileid
}, (err, res) => {
  res.fileList && res.fileList.length
  && res.fileList.map(item => {
    console.log(item.download_url)
  });
});

TIP

您需要将代码中的 cloud://example.jpeg 修改为文件的 fileid 。

更多详情请参考文件存储相关 开发指南 (opens new window)

# 操作云函数

您可以对云函数的安全调用。示例代码如下:

//调用云函数
app.callFunction({ name: 'test', data: { hello: 'world' }, function(err, res) {

}};

更多详情请参考云函数相关 开发指南 (opens new window)