微信小程序接入

2020.06.08 14:34:08

    兼容性

    支持小程序基础库所有版本

    接入流程

    • 添加域名白名单
    • 嵌入SDK
    • init:初始化SDK以获取SDK对象,整个页面SDK初始化一次即可;
    • getToken:获取token,每次调用返回不同的token值。
    • 提交token:将token作为请求参数提交到业务方后端。

    添加域名白名单

    使用公众号帐号登录微信公众平台,在管理员首页的左侧栏,可以找到 设置 - 开发设置,需要将小程序SDK的服务器域名(地址:https://ac.dun.163yun.com)加入服务器域名白名单。

    嵌入SDK

    下载并保存SDK代码至本地(编码格式为UTF8),下载地址:https://nos.netease.com/yidun/watchman.m2.0.0.min.js 在需要保护的小程序页面嵌入SDK,请注意:

    • 请在该页面头部引入;
    • 一个页面引入一次即可;

    示例代码如下:

    const WATCH_MAN = require('./watchman.min.js')
    

    init接口

    嵌入sdk后,在onLoad或者onReady生命周期回调函数中进行初始化SDK,以获取SDK对象,拥有SDK对象才能调用SDK的其他接口。接口调用说明如下:

    • 调用方式:WATCH_MAN.init(options)
    • 返回值:void

    参数options是json,结构如下:

    属性名 类型 是否必须 作用
    productNumber String 产品编号
    onload Function 初始化完成后的回调函数,SDK对象将以回调函数参数的形式提供
    onerror Function 初始化失败的回调函数

    初始化SDK的示例代码如下:

    const WATCH_MAN = require('./watchman.min.js')
    
    Page({
      data: {
    	watchmanInstance:null
      },
      onLoad: function () {
        WATCH_MAN.init({
          productNumber: 'YOUR_PRODUCT_NUMBER',
          onload: (instance) => {
        	this.data.watchmanInstance = instance	
          }
        })
      }
    })
    

    getToken接口

    getToken接口返回唯一凭证token,业务方前端需要将此token提交到业务后端,业务后端再使用此token来check接口获取检测结果。注意:

    • 一般由用户的操作来触发getToken调用,比如用户点击 “提交” 按钮动作
    • 一个token只能使用一次

    接口说明如下:

    • 调用方式:watchmanInstance.getToken(businessId,callback)
    • 接口描述:获取唯一凭证token
    • 返回值:void
    参数名 类型 是否必须 作用
    businessId String 业务id
    callback(token) Function 初始化完成后的回调函数,SDK对象将以回调函数参数的形式提供

    获取查询token的示例代码如下:

    this.data.watchmanInstance && this.data.watchmanInstance.getToken('YOUR_BUSINESS_ID', (token) => {
    	// 将token作为参数提交到服务端
    })
    

    可选接口

    start接口

    控制SDK开始监听页面事件,SDK将收集页面的事件信息。 接口说明如下:

    • 调用方式:watchmanInstance.start();
    • 返回值:void
    • 接口参数:无

    示例代码如下:

    this.data.watchmanInstance && this.data.watchmanInstance.start()
    

    stop接口

    控制SDK结束监听页面事件。若需要再次监听页面事件,请再次调用start接口。(请注意:由于微信API限制,stop接口会停用当前页面所有的罗盘、加速器等监听事件,如果页面需要保持监听这些事件,请谨慎调用stop接口)

    接口说明如下:

    • 调用方式:watchmanInstance.stop();
    • 返回值:void
    • 接口参数:无

    示例代码如下:

    this.data.watchmanInstance && this.data.watchmanInstance.stop()
    

    接入示例

    const WATCH_MAN = require('./watchman.min.js')
    
    Page({
      data: {
    	watchmanInstance:null
      },
      onLoad: function () {
        WATCH_MAN.init({
          productNumber: 'YOUR_PRODUCT_NUMBER',
          onload: (instance) => {
    		instance.start() // SDK开始监听页面行为事件
        	this.data.watchmanInstance = instance	
          }
        })
      },
      submit: function (token) {
        wx.request({
    	  url: 'rise.do',
    	  data: {
    	    'token': token
    	  },
    	  success(res) {
    		// 处理点赞的响应
    	  }
    	})
      },
      rise: function() {
    	this.data.watchmanInstance && this.data.watchmanInstance.getToken('YOUR_BUSINESS_ID', (token) => {
    	  // 提交点赞业务请求
    	  this.submit(token)
    	})
      }
    })
    
    在线咨询 电话咨询:95163223 免费试用