如何获取华为运动健康服务授权码并调用Rest API访问数据?
华为运动健康服务(HUAWEI Health Kit)允许三方生态应用在获取用户授权后,通过REST API接口访问数据库,读取华为和生态伙伴开放的运动健康数据或写入数据到华为运动健康服务,为用户提供更加个性化的健康改善服务。如运动类App在获取授权码后可以读取华为用户的心率、步数等运动数据,最终给用户提供健康建议。
1. 申请帐号服务和申请运动健康服务
Health Kit需要用户登录和授权,需要先申请帐号服务,可以在申请帐号服务的同时创建应用,也可以为已经创建的应用开通帐号服务。创建成功后,可以在帐号服务列表里查看已创建的应用,点击条目能查看到的详细信息如下图所示。其中的APP ID,APP SECRET和回调地址后面会用到。
2. 获取授权码code
相比于其他Kit的REST API,Health Kit使用前需要获得授权码登录华为帐号后获取到授权码,多了一个获取授权码Code的步骤。
开发指南对授权码登录做了详细介绍,此处共有client_id,response_type,redirect_uri和scope共四个必传字段,其中client_id, 是在创建应用成功后自动生成的APP ID。redirect_uri 是申请帐号服务步骤中填写的“回调地址”。
在用户输入华为帐号登录授权之后,网页浏览器会跳转到redirect_uri对应的链接,并且把所需要的授权码code作为参数追加在链接后面。
看一下官网给出的示例请求,在电脑或手机浏览器中打开上述链接,都会显示如下的华为帐号登录和授权页面。
登录授权成功之后浏览器会跳转如下链接
其中接口需要用到的授权码code就是链接中请求载荷参数code的字符串值。
需要注意的是:这边控制台中的code是urlencode编码前的字符串,浏览器中的code是urlencode编码后的字符串。
在后续步骤主要使用的是urlencode编码前的code的值。(浏览器中的code需要进行urlencode解码再使用)
接下来需要通过上面获取到的授权码code,获取access_token和refresh_token。
由于使用限制,接下来的步骤不能再使用官网demo的参数进行测试了,需要创建自己的应用。然后传入自己项目相关的参数,重复上述步骤获取授权码code。
创建的应用的相关参数,都可以在“应用服务”-“帐号”下面找到,如下是创建的一个测试应用的信息页面。
1.使用授权码Code获取AT
client_id,redirect_url需要和获取授权码code使用的一致。
code参数是urlencode编码前的code的值。
client_secret参数是上面应用信息里的APP SECRET。
2 .Refresh Token获取access_token
3.使用获取到的access_token测试数据相关API
由于我们上面登录授权时,申请了获取身高体重的权限,所以在此测试一下获取身高数据的接口。
参照“查询最新采样数据”的文档链接,按照文档中postman请求测试结果如下:
Head里面的参数:Authorization 字段值为: Bearer+‘空格’+ access_token值,形如:Bearer {access_token} ,x-client-id 的值需要和上方使用的client_id一致。
请求参数“dataTypeName”:“com.huawei.instantaneous.body_weight”在数据类型-体重-原子采样数据类型可以找到:
https://developer.huawei.com/consumer/cn/doc/development/HMSCore-References/latest-sampleset-0000001078273166
如果要同时查询多个数据,请求url示例如下:
https://health-api.cloud.huawei.com/healthkit/v1/sampleSets/latestSamplePoint?dataType=com.huawei.instantaneous.body_weight&dataType=com.huawei.instantaneous.blood_glucose
链接后拼接多个dataType参数即可。
了解更多详情>>
如何获取华为运动健康服务授权码并调用Rest API访问数据?的更多相关文章
- 【FAQ】申请华为运动健康服务授权的4个常见问题及解决方法
华为运动健康服务(HUAWEI Health Kit)提供原子化数据开放,在获取用户对数据的授权后,应用可通过接口访问运动健康数据,对用户数据进行增.删.改.查等操作,为用户提供运动健康类数据服务.这 ...
- Mate 40系列发布 搭载华为运动健康服务带来健康数字生活
10月30日,HUAWEI Mate 40系列国内发布会如期而至.Mate 40系列除了拥有强悍的性能.全能记录影像和突破性的交互之外,还搭载了全新升级的HMS Core,其中,Health Kit( ...
- 华为运动健康服务Health Kit 6.9.0版本新增功能揭秘!
华为运动健康服务(HUAWEI Health Kit)6.9.0版本新鲜出炉啦! 一文了解新增功能,快来一起加入Health Kit生态大家庭! 一.更丰富:睡眠呼吸记录健康数据开放 呼吸机是用于为患 ...
- 【FAQ】运动健康服务REST API接口使用过程中常见问题和解决方法总结
华为运动健康服务(HUAWEI Health Kit)为三方生态应用提供了REST API接口,通过其接口可访问数据库,为用户提供运动健康类数据服务.在实际的集成过程中,开发者们可能会遇到各种问题,这 ...
- 【FAQ】申请运动健康服务验证环节常见问题及解答
华为 HMS Core 运动健康服务(HUAWEI Health Kit)提供原子化数据开放.应用在获取用户数据授权后,可通过接口访问运动健康数据,对用户数据进行读写等操作,为用户提供运动健康类数据服 ...
- 吴太银:华为消费者云服务Cassandra使用场景与最佳实践
大家好,我是华为消费者云的吴太银. 我今天分享的主要是华为消费者云服务使用Cassandra的应用场景和最佳实践.我这个可能跟其他嘉宾分享的不太一样,因为前几个嘉宾讲的实际上对Cassandra原生的 ...
- Apache Oltu 实现 OAuth2.0 服务端【授权码模式(Authorization Code)】
要实现OAuth服务端,就得先理解客户端的调用流程,服务提供商实现可能也有些区别,实现OAuth服务端的方式很多,具体可能看 http://oauth.net/code/ 各语言的实现有(我使用了Ap ...
- 钉钉开发第三方H5微应用入门详细教程[ISV][免登流程][授权码][HTTP回调推送][识别用户身份][获取用户信息]
转载请注明原文地址:https://www.cnblogs.com/applerosa/p/11509512.html (by lnexin@aliyun.com 世间草木) 此教程注意点: 适用于第 ...
- Spring cloud微服务安全实战-5-6实现授权码认证流程(2)
授权服务器,返回给我一个授权码,这里我只需要把授权传回去就可以了.来证明我是这个服务器. URI的地址传和第一次的地址一样的,认证服务器会比,第一次跳转的请求和第二次申请令牌的请求redirect_u ...
- 阶段5 3.微服务项目【学成在线】_day16 Spring Security Oauth2_06-SpringSecurityOauth2研究-Oauth2授权码模式-申请令牌
3.3 Oauth2授权码模式 3.3.1 Oauth2授权模式 Oauth2有以下授权模式: 授权码模式(Authorization Code) 隐式授权模式(Implicit) 密码模式(Reso ...
随机推荐
- Linux_Centos_yum报错总结
此篇适用于yum报错[尝试其他镜像]并且[curl 外网]不通的情况,此时一般考虑是网络的问题 一,出现的报错信息: 此时测试curl / ping www.baidu.com会发现无法连通 二, ...
- Mybatis中没有返回值的查询方法
最近在项目开发中发现一件非常有意思的事情,一个Mapper.java文件中有一个查询方法没有返回值,这引起了我的好奇心, 没有返回值查询还有什么用呢? 仔细去看这个Mapper.java文件对应的xm ...
- Win10使用Dism++离线安装.Net3.5
.Net3.5的安装包在Win10已经不能使用了,在线安装.Net3.5会很卡(跟网络无关),最好是使用Dism++提取Win10系统镜像文件离线安装. 打开Dism++软件,按照如下步骤操作: 选择 ...
- Python使用pyecharts库构建股票交易 可交互可视化展示——基于Tushare大数据开放社区
Python使用pyecharts库构建股票交易 可交互可视化展示--基于Tushare大数据社区 1.前言 大家好!欢迎各位访问我的博客,今天给大家分享的是 python使用pyecharts库构建 ...
- WEBRTC回声消除-AECM算法源码解析之参数解析
一 概述 webrtc 针对回声问题一共开源了3种回声消除算法,分别为aec,aecm,以及aec3,其中aec是最早期的版本,在后续的更新中aec3的出现代替了aec在webrtc 中的地位,而 ...
- 后端基础SQL—数据库简介与SQL语法
数据库简介与SQL语法 1.数据库简介 2.数据库结构 3.SQL语句 4.SQL基本语法 5.MySQL基础查询语句 6.高级查询与子查询 7.渗透测试常用函数 8.判断闭合类型 一.数据库简介 数 ...
- django(视图层)
更详细的视图层讲解,看下面链接 https://www.cnblogs.com/xiaoyuanqujing/articles/11643459.html 一. 三板斧 ''' HttpRespons ...
- 记录--没有await,如何处理“回调地狱”
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 太长不看 不要嵌套使用函数.给每个函数命名并把他们放在你代码的顶层 利用函数提升.先使用后声明. 处理每一个异常 编写可以复用的函数,并把 ...
- 记录--手写一个 v-tooltip 指令
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 日常开发中,我们经常遇到过tooltip这种需求.文字溢出.产品文案.描述说明等等,每次都需要写一大串代码,那么有没有一种简单的方式 ...
- 网站https 问题记录
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 开发过程中 常见的 https 问题 - 避坑 做前端多年,发现有些问题需要重复解决很多次,浪费了不少时间,https 导致的问题就属于其 ...