【Raspberry Pi 3B+试用体验】6弹,Express实现多dt18b20远程访问...
-
-
xdsnet
- LV7工程师
-
| 2018-06-07 08:39:42
- 浏览量 1373
- 回复:0
本帖最后由 xdsnet 于 2018-6-7 08:48 编辑
前面用c语言实现读取多个dt18b20数据,要远程服务,就需要远程获取到温度值,这里就利用nodejs的express框架简单实现远程获取温度信息。
1. 环境信息: Rasbian最新系统,因为该信息不需要特殊权限(只要安装好W1模块,打开了相应支持——见前文),Nodejs版本10.2.1,npm版本6.1.02. 基础环境构建(通过提前安装express-generator)搭建基 本环境,具体为执行下面命令:
sudo npm install express-generator -g express myapp cd myapp npm install
这样就搭建好了基本环境,可以执行
DEBUG=myapp npm start
或者
npm start
来启动服务,用和树莓派在一个网段的机器上的浏览器打开
http://设备地址:3000/
如果能正常看见东西表明基 本环境正确了。在树莓派上用Ctrl+c 结束服务
然后编辑myapp下的app.js,在
var indexRouter = require('./routes/index');
下添加
var readTempsRouter = require('./routes/readTemps');
在
app.use('/', indexRouter);
下添加
app.use('/readTemps', readTempsRouter);以添加一个访问接口,下面就是具体的实现,内容在 routes/readTemps.js 文件中,具体内容为(不知道为什么老显示程序中又非法字符,所以只能以附件形式提供):
然后重新运行服务,则用
http://树莓派地址:3000/readTemps
就可以浏览到json格式的温度数据了。每次访问都是新值。
本帖最后由 xdsnet 于 2018-6-7 08:48 编辑
前面用c语言实现读取多个dt18b20数据,要远程服务,就需要远程获取到温度值,这里就利用nodejs的express框架简单实现远程获取温度信息。
1. 环境信息: Rasbian最新系统,因为该信息不需要特殊权限(只要安装好W1模块,打开了相应支持——见前文),Nodejs版本10.2.1,npm版本6.1.02. 基础环境构建(通过提前安装express-generator)搭建基 本环境,具体为执行下面命令:
sudo npm install express-generator -g express myapp cd myapp npm install
这样就搭建好了基本环境,可以执行
DEBUG=myapp npm start
或者
npm start
来启动服务,用和树莓派在一个网段的机器上的浏览器打开
http://设备地址:3000/
如果能正常看见东西表明基 本环境正确了。在树莓派上用Ctrl+c 结束服务
然后编辑myapp下的app.js,在
var indexRouter = require('./routes/index');
下添加
var readTempsRouter = require('./routes/readTemps');
在
app.use('/', indexRouter);
下添加
app.use('/readTemps', readTempsRouter);以添加一个访问接口,下面就是具体的实现,内容在 routes/readTemps.js 文件中,具体内容为(不知道为什么老显示程序中又非法字符,所以只能以附件形式提供):
然后重新运行服务,则用
http://树莓派地址:3000/readTemps
就可以浏览到json格式的温度数据了。每次访问都是新值。