找回密码
 立即注册

使用微信账号登录

只需一步,快速开始

搜索附件  
我爱蓝牙网 - 52Bluetooth - 最具人气蓝牙技术交流网站 附件中心 蓝牙技术交流区 蓝牙BLE专区 nrf-cloud-rest-api-06-nordic-semi-wireless-iot-iwUx-600w.jpeg.webp

nrf-cloud-rest-api-06-nordic-semi-wireless-iot-iwUx-600w.jpeg.webp

 

基于nRF Cloud Rest API实现云到云交互:
nRF Cloud 简介
nRF Cloud是Nordic提供的云服务,可以实现设备数据上云,OTA,辅助定位等功能。我们可以选择所需的服务以及如何连接设备,或者使用云到云的服务,保持设备连接到我们自己的服务。
该平台基于亚马逊云服务 (AWS) 构建,集成了多个微服务。您和您的设备可以通过网页门户以及 REST、MQTT 和 CoAP API 与 nRF Cloud 服务交互。您还可以根据具体用例组合使用这些接口。
nRF Cloud 适用于多种用户,包括使用 Nordic Semiconductor 芯片开发新产品的硬件或软件工程师、设备群管理人员,以及使用 nRF Cloud REST API 为物联网解决方案构建自定义用户界面的网页或移动应用开发人员。
什么是nRF Cloud REST API
nRF Cloud REST API 是 nRF Cloud 提供的一组基于 REST(Representational State Transfer)架构的应用程序接口。它允许开发者通过标准的 HTTP 请求与 nRF Cloud 平台进行交互和通信。以下是 nRF Cloud REST API 的一些关键特点和功能:
  • 设备管理
  • 数据通信
  • 安全
  • 事件处理
  • 用户管理

通过 nRF Cloud REST API,开发者可以构建自定义的 web 或移动应用程序,以实现对设备的远程监控、控制和管理。这使得开发者能够灵活地集成 nRF Cloud 服务到现有的系统中,或者开发新的物联网解决方案。
这个链接https://api.nrfcloud.com/v1/列出了所有 nRF Cloud REST API以及API的请求/应答数据格式。
本博客主要介绍怎么利用REST API实现云到云的数据交互。
准备工作一 —— 注册nRF cloud 账号
  • 打开https://nrfcloud.com/#/
  • 点击Register,填好相关的信息后确认,此时就注册了一个nRF cloud的开发者(developer)账号。
  • 如果想要体验更多的nRF Cloud服务,如agps辅助定位,wifi定位我们需要将developer账号升级到pro升级方式如下:

• 进入nrf cloud的DASHBOARD界面,点击页面右上角的plan setting选项
• 点击 Change plan按钮
• 此时会弹出三个等级账号的资费标准和权限,DEVELOPER就是我们刚刚注册的账号等级,Pro为高级账号,ENTERPRISE为企业账号,升级企业账号需要跟Nordic的销售人员联系,我们会根据实际情况给出收费标准。关于账号的详细介绍可以参考此链接:https://docs.nrfcloud.com/AccountAndTeamManagement/Plans/PlanOverview.html
• 点击PRO下的upgrade!填写相关信息,包括公司信息,信用卡卡号等,即可完成升级。
准备工作二—— 安装rest api工具Postman
根据以下链接安装POSTMAN并试验发送请求。
  • https://learning.postman.com/docs/getting-started/first-steps/get-postman/
  • https://learning.postman.com/docs/getting-started/first-steps/sending-the-first-request/
准备工作三—— 生成Token
Token分为三种,API Key,JSON Web Token (JWT),和 Service Evaluation Token。REST API 使用 API key对用户进行身份认证,使用 JSON Web Token (JWT) 对设备进行身份认证。nRF Cloud REST API 中的某些API要用JWT,这些API在Authorizations字段需要填入 JSON Web Token。而有些API只需要用API key做认证即可。某些API,如 FetchCurrentPendingFOTAJobExecution,支持这两种认证方式。Service Evaluation Token起到的作用跟JWT一样,只不过它只有30天有效期。
API Key 在nRF cloud 账号生成的时候就自带了,点击右上角的user account就可以找到。
如果你是开发者账号Service Evaluation Token 在Team里面生成,如果你是Pro账号,在这里生成的则是没有使用时间限制的JWT。
示例
准备工作做完了,我们就可以正式使用REST API了。下面举几个REST API的例子:
获取设备信息:
用curl指令使用此API:
curl https://api.nrfcloud.com/v1/devices -H "Authorization: Bearer 0b6f1715f8e7xxxxx205752xxxxx5aeffa39"
这条API,类型是GET, 认证类型是Bearer token,Token类型是simple token,即API Key,以上指令中紧跟着Bearer后的就是nRF CLOUD账户中对应的API Key。
同样,我们也可以使用POSTMAN来完成,如下图所示,填入正确的API类型,API地址,认证类型和Token后,点击send,在回复框中能够得到nrf cloud的回复,列出所有设备的信息。
通过WIFI热点的SSID来获取WIFI定位坐标
curl指令示例:
curl -X POST https://api.nrfcloud.com/v1/location/wifi -H "Authorization: Bearer <JWT_Token>" -H "Content-Type: application/json" -d {\"accessPoints\":[{\"macAddress\":\"40:9b:cd:c1:5a:40\",\"ssid\":\"Nordic_WLAN_5GHz\"},{\"macAddress\":\"00:90:fe:eb:4f:42\",\"ssid\":\"Nordic_Guest\"}]}
这条指令API类型为POST,包含两个header(-H),一个是Authorization,一个是Content-Type,在Authorization中输入nrf cloud账号相关的JWT,在Content-Type中选择 application/json,说明我们的请求主体是json格式的,接下来-d字符后面跟着的就是以json格式编辑的WIFI的ssid和MAC地址。
同样,在POSTMAN中,如下图所示,填入API地址,类型选择为POST,Token此时填入的是JWT。
然后在Header中确认选中content type为application/json
然后再Body中填入请求主体,即json格式的WIFI SSID和MAC地址,最后点击Send,我们就可以在下面的回复框中得到经纬度和误差。

nrf-cloud-rest-api-06-nordic-semi-wireless-iot-iwUx-600w.jpeg.webp
         同一主题附件:
    nrf-cloud-rest-api-01-nordic-semi-wireless-iot-iIUl-600w.jpeg.webp
    nrf-cloud-rest-api-02-nordic-semi-wireless-iot-Ersz-600w.jpeg.webp
    nrf-cloud-rest-api-03-nordic-semi-wireless-iot-RN2B-600w.jpeg.webp
    nrf-cloud-rest-api-04-nordic-semi-wireless-iot-Dw5Z-600w.jpeg.webp
    nrf-cloud-rest-api-05-nordic-semi-wireless-iot-YZvH-600w.jpeg.webp
    nrf-cloud-rest-api-06-nordic-semi-wireless-iot-iwUx-600w.jpeg.webp
    nrf-cloud-rest-api-07-nordic-semi-wireless-iot-rQ9--600w.jpeg.webp
    nrf-cloud-rest-api-08-nordic-semi-wireless-iot-Y66b-600w.jpeg.webp
    nrf-cloud-rest-api-09-1-nordic-semi-wireless-iot-4XXG-535w.jpeg.webp
    nrf-cloud-rest-api-10-nordic-semi-wireless-iot-GMsJ-600w.jpeg.webp
    nrf-cloud-rest-api-11-nordic-semi-wireless-iot-kunH-600w.jpeg.webp
    nrf-cloud-rest-api-12-nordic-semi-wireless-iot-F0uc-600w.jpeg.webp
    nrf-cloud-rest-api-13-nordic-semi-wireless-iot-sxZG-600w.jpeg.webp

小黑屋|手机版|我爱蓝牙网 - 52Bluetooth

GMT+8, 2025-7-4 23:42 , Processed in 0.057010 second(s), 10 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

返回顶部