OneNET Http推送+java+ngrok实现OneNET向第三方服务器推送数据

OneNET Http推送+java+ngrok实现OneNET向第三方服务器推送数据

原理

  • OneNET的HTTP推送服务可以将OneNET的数据以HTTP协议的方式向第三方服务器推送,这里第三方服务器就是我们本地用java sdk搭建的服务器
    http推送服务概述
  • OneNET推送的目的服务器要求有对外开放的固定IP(是国家备案,实名认证的),自己电脑的IP一般都不是,需要做端口映射。这里使用ngrok实现

本文章分为:
1、OneNET上数据流模版生成
2、第三方服务器搭建及ngrok代理
3、http推送

数据流模版

1、在多协议接入页面选择HTTP,新建一个产品、新建一个设备:
在这里插入图片描述
在这里插入图片描述
2、数据流
新建一个数据流模版:
在这里插入图片描述
使用API调试向数据模版推送数据:

  • 这里的URL格式为:http://api.heclouds.com/devices/设备ID/datapoints
  • APIKey为产品的MasterAPIKey或设备自己的APIKey
  • HTTP请求参数查询:https://open.iot.10086.cn/doc/art527.html#108

在这里插入图片描述
数据生成成功会返回

{
    "errno": 0,
    "error": "succ"
}

生成多个数据后的数据流模版:
生成多个数据后的数据流模版

第三方服务器搭建

这里使用的是java的数据推送服务端SDK,还有多种语言可选:https://open.iot.10086.cn/doc/multiprotocol/book/manual/httppush/sdk.html
在这里插入图片描述
下载好后用IDEA打开文件目录如下:
在这里插入图片描述
需要修改的是ReceiveDemo.java中的token与aeskey

  • aeskey在产品概况中查询
  • token与HTTP推送服务的token一致,用户自定义的。
    在这里插入图片描述
    application中配置的是tomcat运行的本地端口号,随意设置,之后代理服务器设置的时候与这个端口一致。按习惯设置为8080:
    在这里插入图片描述
    本地服务器就配置好了。然后使用代理,将本地服务暴露到外网中。
    打开ngrok,输入ngrok http 8080。需要注意的是,这里的端口8080可以根据需要替换成其他端口。这条命令的意思是将本地8080端口对应的服务暴露到外网中。
    运行后将出现如下结果:
    在这里插入图片描述
    Forwarding,第一个是http协议对应的外网地址,第二个是https协议对应的外网地址。这样,凡是访问 http://c79dcc56.ngrok.io的请求都将发送到localhost:8080。OneNET HTTP推送的地址就是这个http://c79dcc56.ngrok.io。

HTTP推送

增加一个全局推送:
在这里插入图片描述
连接成功后ngrok显示http 200
在这里插入图片描述
IDEA控制台返回以下信息:
在这里插入图片描述
此时,如果用API调试像该数据流模版发送一个数据,IDEA的控制台就会打印出该条消息:
在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值