通过小程序云SDK,您可以在小程序中直接访问小程序云Serverless服务。2.2版本开始支持统计分析功能。
前提条件
在支付宝小程序中使用SDK
完成以下操作,在支付宝小程序中使用SDK:
- 在支付宝小程序项目的根目录执行以下命令安装SDK。
npm install @alicloud/mpserverless-sdk@2.2 --save
- 在小程序项目中添加以下代码,初始化SDK。
import MPServerless from '@alicloud/mpserverless-sdk'; const mpServerless = new MPServerless({ uploadFile: my.uploadFile, request: my.request, getAuthCode: my.getAuthCode, getFileInfo: my.getFileInfo, getImageInfo: my.getImageInfo }, { appId: '1234456789', // 小程序应用标识 spaceId: 'db4dd657-7041-470a-90xxxxx', // 服务空间标识 clientSecret: '6c3c86xxxx6', // 服务空间 secret key endpoint: 'https://endpoint', // 服务空间地址,从小程序Serverless控制台处获得 });
其中:
- appId是小程序的ID。您可以在支付宝小程序开放平台获取小程序的App ID。
- spaceId、clientSecret和endpoint在小程序Serverless控制台创建服务空间后可以获得。详情参见创建服务空间。
- 调用user.authorize方法完成授权。
const res = await mpServerless.user.authorize({ authProvider: 'alipay_openapi' }); if (res.success) { console.log('授权成功'); }
其中:
说明- 如果同时指定了authProvider和authType,authType配置优先。
- 如果将authType设置为anonymous,则不需要设置authProvider。
- 如果没有设置authType,则必须设置authProvider。
- 匿名授权获取的用户身份是一个临时身份,每次匿名授权得到的用户标识是随机不固定的,若需要获取固定用户标识,则需要通过三方授权获取。
- 用户第一次进入小程序时,授权操作会唤起用户授权弹框,需要用户阅读并同意《用户授权协议》,以获取用户的昵称、头像、性别、地区和用户状态等信息。如果用户拒绝了该协议,则会造成小程序Serverless三方授权失败,无法使用小程序Serverless服务。如需避免此种情况发生,请使用匿名授权方式,匿名授权相当于静默授权,不会唤起授权弹框。
在微信小程序中使用SDK
完成以下操作,在微信小程序中使用小程序云SDK:
- 在微信小程序项目的根目录执行以下命令安装SDK。
npm install @alicloud/mpserverless-sdk@2.2 --save
- 在app.js或其他需要的页面中引入SDK文件。
//app.js const MPServerless = require('/sdk/mpserverless.js'); const MPServerless = require('@alicloud/mpserverless-sdk'); const mpServerless = new MPServerless({ uploadFile: wx.uploadFile, request: wx.request, getAuthCode: wx.login, getFileInfo: wx.getFileInfo, getImageInfo: wx.getImageInfo, }, { appId: 'appId', // 小程序应用标识 spaceId: '', // 服务空间标识 clientSecret: '', // 服务空间 secret key endpoint: '', // 服务空间地址,从小程序 serverless 控制台处获得 });
其中:
- 调用user.authorize方法完成授权
const res = await mpServerless.user.authorize({ authProvider: 'wechat_openapi' }); if (res.success) { console.log('授权成功'); }
其中:
说明- 如果同时指定了authProvider和authType,authType配置优先。
- 如果将authType设置为anonymous,则不需要设置authProvider。
- 如果没有设置authType,则必须设置authProvider。
- 匿名授权获取的用户身份是一个临时身份,每次匿名授权得到的用户标识是随机不固定的,若需要获取固定用户标识,则需要通过三方授权获取。
- 用户第一次进入小程序时,授权操作会唤起用户授权弹框,需要用户阅读并同意《用户授权协议》,以获取用户的昵称、头像、性别、地区和用户状态等信息。如果用户拒绝了该协议,则会造成小程序Serverless三方授权失败,无法使用小程序Serverless服务。如需避免此种情况发生,请使用匿名授权方式,匿名授权相当于静默授权,不会唤起授权弹框。
在钉钉小程序中使用SDK
完成以下操作,在第三方个人应用的钉钉小程序中使用小程序云SDK:
- 在钉钉小程序项目的根目录执行以下命令安装SDK。
npm install @alicloud/dt-mpserverless-sdk@0.0.2 --save
- 在小程序项目中添加以下代码,初始化SDK。
import MPServerlessSDK from '@alicloud/dt-mpserverless-sdk'; const mpServerless = new MPServerlessSDK({ uploadFile: dd.uploadFile, request: dd.httpRequest, getAuthCode: dd.getAuthCode }, { appId: '1234456789', // 小程序应用标识 spaceId: 'db4dd657-7041-470a-90xxxxx', // 服务空间标识 clientSecret: '6c3c86xxxx6', // 服务空间 secret key endpoint: 'https://endpoint', // 服务空间地址,从小程序Serverless控制台处获得 })
其中:
- 调用user.authorize方法完成授权。
const res = await mpServerless.user.authorize({ authProvider: 'dingtalk_openapi' }); if (res.success) { console.log('授权成功'); }
其中:
说明- 如果同时指定了authProvider和authType,authType配置优先。
- 如果将authType设置为anonymous,则不需要设置authProvider。
- 如果没有设置authType,则必须设置authProvider。
- 匿名授权获取的用户身份是一个临时身份,每次匿名授权得到的用户标识是随机不固定的,若需要获取固定用户标识,则需要通过三方授权获取。
- 用户第一次进入小程序时,授权操作会唤起用户授权弹框,需要用户阅读并同意《用户授权协议》,以获取用户的昵称、头像、性别、地区和用户状态等信息。如果用户拒绝了该协议,则会造成小程序Serverless三方授权失败,无法使用小程序Serverless服务。如需避免此种情况发生,请使用匿名授权方式,匿名授权相当于静默授权,不会唤起授权弹框。