Subprograma WeChat: obtenga los pasos de ejercicio del usuario

Procedimiento para obtener información del usuario

  • Haga clic para consultar la autorización en la documentación de WeChat
  • Primero, el programa primero le pregunta al usuario qué permisos tiene para acceder
  • Volver al programa después de que el usuario haga una selección
  • Portabilidad del programa para acceder al servidor
  • Devolver información si el usuario lo permite
  • No devolver si el usuario está autorizado
    inserte la descripción de la imagen aquí

Función personalizada getUserRun

inserte la descripción de la imagen aquí
Para que se cargue la página de datos deportivos de WeChat del usuario, llame a esta función y realice las siguientes operaciones en la función

1. Obtenga la configuración de permisos del usuario

inserte la descripción de la imagen aquí

  • wx.getSetting(objeto, objeto) obtiene la configuración del usuario actual y el valor devuelto son los permisos (incluidos los permitidos y los no permitidos) que el applet ha solicitado al cliente
  • El éxito de la función es que la configuración de autenticación en el contenido de salida es un objeto vacío después de la ejecución exitosa, lo que indica que el usuario actual no tiene ningún permiso para modificar el programa.
2. Determinar si el usuario ha autorizado la cantidad de pasos de ejercicio de WeChat

inserte la descripción de la imagen aquí

  • Cuando el usuario autoriza los pasos del ejercicio de WeChat, el valor de retorno exitoso en la configuración authSetting debe incluir scope.werun
  • Se puede juzgar según si el objeto de valor de retorno authSetting contiene scope.werun

inserte la descripción de la imagen aquí

2.1 Si el usuario no ha sido autorizado
  • Al llamar a wx.authorize(objeto, objeto), una ventana emergente pregunta inmediatamente si desea autorizar el applet para usar una determinada función u obtener algunos datos del usuario.Si el usuario lo autorizó, no aparecerá.
    inserte la descripción de la imagen aquí
    inserte la descripción de la imagen aquí
  • El valor del parámetro de ámbito es el permiso que se va a solicitar
  • Ejecutar la función de éxito después de que el usuario lo permita
    inserte la descripción de la imagen aquí
    • Llame a un método personalizado para obtener los datos de movimiento de WeChat del usuario
  • Si el usuario no lo permite, ejecuta la función failinserte la descripción de la imagen aquí
    • En la función, a través de wx.showModal, el título del cuadro de aviso emergente es el título y el contenido es el contenido. Después de que el usuario confirma, el cuadro de aviso desaparece.
2.2 Si el usuario ha autorizado
  • Llame al método personalizado (este método es para obtener los datos del movimiento de WeChat del usuario)
    inserte la descripción de la imagen aquí
3. Función personalizada para leer los datos de movimiento de WeChat del usuario
  //定义函数读取用户微信运动数据
  getWeRunData() {
    
    
    wx.getWeRunData({
    
    
      success(res) {
    
    
        console.log(res)
      }
    })
  },

inserte la descripción de la imagen aquí

  • Obtenga los pasos del ejercicio de WeChat del usuario en los últimos 30 días llamando a la interfaz wx.getWeRunData(Object object). Primero debe llamar a la interfaz wx.login. La información del conteo de pasos se actualizará cuando el usuario ingrese activamente al subprograma.

  • Pero los datos devueltos se cifran por seguridad y se descifran de la siguiente manera
    inserte la descripción de la imagen aquí

  • Recompilar el código de la función personalizada

     //定义函数读取用户微信运动数据
      getWeRunData() {
          
          
        wx.getWeRunData({
          
          
          success(res) {
          
          
            //由于数据是进行加密的所以我们通过条用云函数的方式进行解密
            wx.cloud.callFunction({
          
          
              name: 'deswerundata',
              data: {
          
          
                weRunData: wx.cloud.CloudID(res.cloudID) // 这个 CloudID 值到云函数端会被替换
              }
            }).then(res=>{
          
          
              console.log(res)
            })
          }
        })
      },
    
    • El valor de nombre es el nombre de la función de la nube que queremos llamar
    • data es la información que queremos pasar
    • .then es obtener los datos devueltos después de solicitar la función de nube
  • Crear función de nube deswerundata
    inserte la descripción de la imagen aquí
    inserte la descripción de la imagen aquí

  • Edite el código en index.js en esta función de nube para que sea

    // 云函数入口文件
    const cloud = require('wx-server-sdk')
    
    cloud.init()
    
    // 云函数入口函数
    exports.main = async (event, context) => {
          
          
      let weRunData = event.weRunData
    
      return {
          
          
        weRunData
      }
    }
    
  • Simplemente cargue y vuelva a compilar la función de la nube
    inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/JHXL_/article/details/106398571
Recomendado
Clasificación