文档中心
邀测站点 
运动数据
运动数据 > my.getrundata

my.getrundata -凯发app官方网站

收藏
我的文档
设置

my.getrundata(object object)

基础库  或更高版本; 且 支付宝客户端 10.1.60 或更高版本; 若版本较低,建议采取 兼容处理

小程序开发者工具: 不支持。请使用真机调试。

主体: 企业支付宝小程序

获取用户指定自然天内运动步数。

目前只支持查询最近 30 天内的运动步数,若超过 30 天,则返回的步数为 0。

获取运动数据

为了确保准确接入“获取运动数据的能力, 需要按照 配置加密加签 > 产品开通 > api调用 > 解密及验签 的流程接入。
1
配置加密加签 开放平台
2
产品开通 商家平台、开放平台
3
api调用 小程序
4
解密及验签 服务端

是否必须: 是。

加密: 设置 接口内容加密方式 (可参考文档接口内容加密方式)。

加签: 如需验证内容的真实性,可进一步设置接口加签方式: 设置 接口加签方式 (可参考文档接口加签方式)。

未设置接口加密方式而直接调用 my.getrundata,将得到异常响应“缺少加密配置”(code 40001),可点此查看示例:未配置接口内容加签方式

是否必须: 是。

  1. 需要在 列表中,为当前小程序开通 运动数据 产品。

  2. 在开放平台——控制台——隐私申请——运动数据(需登录主账号或管理员账号进行操作),申请 运动数据。如图 如果 申请使用 按钮为灰色,请对照 隐私申请及使用基础规则 检查小程序的主营行业设置

未开通 运送数据 产品或未通过运动数据申请直接调用 my.getrundata,解密后将得到异常响应“isv 权限不足”(code 40006), 可点此查看示例:未开通产品/未申请运动数据

是否必须: 是。

调用my.getrundata获取加密后的报文数据。

是否必须: 是。

my.getrundata success 回调参数 response 密文发送给服务端,参考 接口内容加密方式 进行验签解密。

如果前面步骤未正确完成,报错信息也会在解密步骤完成后才能看到,可点此查看示例: 解密失败的返回值

如果一切正常,解密后可获取运动步数,可点此查看示例: 解密成功的返回值

object object

查看示例

属性 类型 默认值 必填 描述
countdate string -

要查询的步数日期(yyyy-mm-dd)的字符串,例如:'2018-12-19'

success function -

调用成功的回调函数

fail function -

调用失败的回调函数

complete function -

调用结束的回调函数(调用成功、失败都会执行)

success 回调函数

参数

object res

属性 类型 描述
response string | object
  • 如果返回值为 string 类型,则为 经过加密的指定日期的步数数据,需要通过 my.request 请求解密运动数据;
  • 如果为 object 类型且返回异常报错信息,则为 加密异常。具体异常信息见错误码部分

加密 response 返回异常报错信息 以及 服务端解密异常报错信息。 可参考 服务端解密异常

错误码 说明 凯发app官方网站的解决方案
20000 系统繁忙 可提示用户“稍后再试”。
40001 缺少加密配置 调用my.getrundata之前,需完成接口内容加密方式的配置: 进入 配置 接口内容加密方式 。详见:接口内容加密方式
40001 应用未设置默认签名类型 重新保存下开发者的密钥,或者设置下小程序的应用网关地址。
40002 加密异常。 参考文档:接口内容加密方式,重新设置接口内容加密方式。
40006 isv 权限不足,建议在开发者中心检查签约是否已经生效。
  • 正确设置小程序主营行业
  • 商家平台开通 运动数据 产品
  • 开放平台申请 运动数据,详细可参考 隐私申请及使用基础规范
  • fail 回调的参数为 object,error 属性为错误码,errormessage 属性为错误消息。可参考 fail 回调参数

    错误码 说明 凯发app官方网站的解决方案
    2 接口参数无效 请检查入参是否正确传入。
    1003 未授权支付宝应用计步权限 为用户拒绝计步授权,无需进行特殊处理。
    1005 用户未开通支付宝运动功能 引导用户按照以下步骤开通:支付宝 app 凯发k8官方网娱乐官方首页 更多 进入到应用中心页面,找到 教育公益运动,按照页面指引,点击 同意协议并允许授权 即可。
    my.getrundata(object object)
    success 回调参数
    fail 回调参数
    未配置接口内容加密方式
    服务端解密成功后的返回值
    未开通产品/未申请运动数据(服务端解密异常)
    接口内容加密有误
    基础调用
    完整的调用
    my.getrundata ({
      // 替换为最近三十天内某一天的日期
      countdate: '2022-06-27',
      fail: res => {
        console.log (res);
      },
      success: res => {
        console.log (res);
      },
      complete: res => {
        console.log (res);
      },
    });
    
    my.getrundata ({
      // 替换为最近三十天内某一天的日期
      countdate: '2022-06-27',
      fail: res => {
        console.log ('get pedometer encrypted fail:'  json.stringify (res));
      },
      success: res => {
        console.log ('get pedometer encrypted success:'  json.stringify (res));
        // 如果 response 为 string 类型 则为加密报文,将此密文传给服务端进行解密;
        // 如果 response 为 object 类型且抛出异常信息,则为加密异常,根据错误码部分说明进行排查;
        const {response = ''} = res;
        if (typeof response === 'string') {
          my.request ({
            // 替换为开发者自己的服务端接口进行解密
            url: 'http://www.telmo.cn/gateway/decrypt',
            data: {
              encryptcontent: response,
            },
            success: function (res) {
              console.log ('decrypt pedometer success:'  json.stringify (res));
            },
            fail: function (res) {
              console.log ('decrypt pedometer fail:'  json.stringify (res));
            },
          });
        } else {
          // 根据错误信息进行排查
          my.alert ({message: json.stringify (response)});
        }
      },
      complete: res => {
        console.log ('getrundata complete:'  json.stringify (res));
      },
    });
    
    {
      "response": "kgpqycs1wqnmihr11mliiz7owm6qkzmq5vwkdpzclmi1n3gwwvgodq2u1vllfznlhf0ttjnakp7qpfzanklzcntsgoi03ywgmhtnkrl0p64dyrgmuifreredykhmkyvvufjxcxzkwpmcwsffwp9pmi7pojbxfhxzqu7kna8fdl3flwog7sciz6c81vgsclltqlqzrw8w3b/o3eojjch3ox/s/of6ztfrgzkjfx6nfydgyjfjnvhlgelvwfvkl7cr5omqgzfjjel8akx /ocwalcd/wjo1qq47ex7lfael72bykwmuvspwl/mhsdcerq8/gsj4yzwhfoj/xngb6a4xqv8ryxes08dwfpftvfrojqvuxpe2puwrntz33voqzuimvdnpp3deu5wjtcdz7qvjg==",
      "sign": "hcjnqtandkjcvebtbtj4asf xtkse8v8j2fybnwr9krooa zqpwcvtpdmszgkyrzwwdzrwxhxghzzk/sdc7odkvy3fjchqj7jpnib8sjkxbqevxkoqi4s85/gapylm91kw654/gzg 24ostnnprh9bux7cbbulmgoo6yj5l0s9ulwepehbxk5jbsrkfptoz030h5z2wpcubhoaubpvqaraareup/dr/bsz0seymt9otjqwhsl7nwmjicunb7ecgzprcrgzouknk zxm2l7q n/dcmhkqkjywlx/47osoaickgc5b7eiuyc57v407eq0udmoiahwlmydnasjyihbu6g=="
    }
    

    此种情况,response 值为 经过加密的指定日期的步数数据,需要通过 my.request 传给服务端进行解密。

    {
      "error": 1003,
      "errormessage": "未授权支付宝应用计步权限"
    }
    
    {
      "response": {
        "code": "40001",
        "msg": "missing required arguments",
        "subcode": "isv.missing-encrypt-key",
        "submsg": "缺少加密配置"
      },
      "sign": "hcjnqtandkjcvebtbtj4asf xtkse8v8j2fybnwr9krooa zqpwcvtpdmszgkyrzwwdzrwxhxghzzk/sdc7odkvy3fjchqj7jpnib8sjkxbqevxkoqi4s85/gapylm91kw654/gzg 24ostnnprh9bux7cbbulmgoo6yj5l0s9ulwepehbxk5jbsrkfptoz030h5z2wpcubhoaubpvqaraareup/dr/bsz0seymt9otjqwhsl7nwmjicunb7ecgzprcrgzouknk zxm2l7q n/dcmhkqkjywlx/47osoaickgc5b7eiuyc57v407eq0udmoiahwlmydnasjyihbu6g=="
    }
    
    {
      "count": 16880,
      "countdate": "2018-12-19",
      "code": "10000",
      "msg": "success"
    }
    

    解密成功后的值,不直接对前端可见。服务端使用 sdk 解密后,需要再将解密后的信息传递前端。

    {
      "code": "40006",
      "msg": "insufficient permissions",
      "subcode": "isv.insufficient-isv-permissions",
      "submsg": "isv权限不足,建议开发者检查对应功能是否已经开通,解决办法详见:https://docs.open.alipay.com/common/isverror"
    }
    

    此种异常情况,错误信息不直接对前端可见,前端将 success 回调函数参数中 response 字段,通过网络请求传递给服务端。 服务端使用 sdk 解密后,再将解密后的信息传递前端。

    {
      "code": "40002",
      "msg": "invalid arguments",
      "subcode": "isv.invalid-encrypt",
      "submsg": "加密异常"
    }
    

    此种异常情况,错误信息不直接对前端可见,前端将 success 回调函数参数中 response 字段,通过网络请求传递给服务端。 服务端使用 sdk 解密后,再将解密后的信息传递前端。

    • tip
      需要在手机的运动健康中关联支付宝。否则若全天都没有打开支付宝,就获取不到这一天的步数。
    内容没有解决您的问题?您还可以前往 或 寻求帮助
    凯发k8官方网娱乐官方 copyright © 2022 支付宝(杭州)信息技术有限公司  | icp证浙b2-20160559
    网站地图