javascript - 学习 Socket.io - 在模块和服务器之间传递数据
问题描述
构建一个简单的快速服务器来托管一个网页。我有一个 DHT-11 探头,我将从中收集数据。试图将数据从传感器模块传递到服务器模块。从服务器我将它传递到前面这是这样做的方法吗?
//server.js
import {readProbe} from '../src/sensor.js'
const express = require('express');
const http = require('http')
const path = require('path');
const app = express();
const socket = require('socket.io');
let server = http.createServer(app);
let io = socket(app);
let PORT = 3000;
// Static files
app.use(express.static(__dirname + '/static'));
app.use(express.static(__dirname + '/public'));
app.get('./', (req, res) => {
res.send('Hello World!')
res.send(__dirname);
});
//Socket setup
io.on('connection', (socket) => {
console.log('made new connection');
})
io.on('probeData', (socket) => {
console.log(`Temp: ${socket.temp}`)
//What should i do here?
} )
app.listen(PORT);
和传感器模块(客户端):
const sensor = require('node-dht-sensor');
const io = io();
const readProbe = () => {
setTimeout(()=>{
sensor.read(11, 17, (err,temperature, humidity) => {
if(!err) {
return {temp: temperature, hum: humidity}
} else {
console.log(err);
}
})
},5000)
}
io.emit('probeData',()=> {
readProbe();
});
希望得到一些反馈
解决方案
推荐阅读
- node.js - 将其他命令发送到使用 exec - nodejs 运行的 powershell 脚本中
- javascript - 从 Rich 中读取文件名:FileUpload using javascript
- python - 使用 systemd 启动 python 代码的问题
- reactjs - 太多的重新渲染 ReactJs
- javascript - 我想从 JSON Stringify 中提取某些字段,例如名称、金额和详细信息
- ruby-on-rails - 嵌套在模块内的类的Rspec未初始化常量 - Ruby on Rails
- python - K 表示算法实现
- python - 在 x 轴 matplot 上突出显示周末
- javascript - 过滤为空时忽略对象属性
- flutter - 如何使用 Flutter 在 image_picker 中包含特定数量的图像