五天学习NodeJs物联网服务
文章平均质量分 96
通过简短5天时间的渐进式学习NodeJs,可以了解到基本的服务开发概念,同时可以学习到npm、内置核心API(FS文件系统操作、HTTP服务器、Express框架等等),最终能够完成基本的物联网服开发,而且能够部署到公网访问。针对电子物联网专业同学或业余爱好者,想针对硬件功能构造简单的服务器。
单片机菜鸟哥
野生单片机电子硬件爱好者,曾做过android原生开发,flutter开发,小程序开发,略略懂点后端开发,业余推广8266 arduino技术学习。做过若干PCB、STM32、ESP32、BLE等项目开发
展开
-
【物联网NodeJs-5天学习】第四天存储篇⑤ ——PM2,node.js应用进程管理器
之前很多情况下我们启动nodejs项目都是通过node命令去启动,但是这种方式一般也不是很稳定安全(如果直接通过node app来启动,如果报错了可能直接停在整个运行)。这时候就需要一个node进程管理工具(也叫作应用管理,像我们之前用的nodemon,更偏向于用于开发中服务热加载),可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等。这就是我们本篇需要介绍到的PM2管理器。在部署。原创 2023-03-12 10:15:20 · 481 阅读 · 2 评论 -
【物联网服务NodeJs-5天学习】第四天存储篇④ ——基于MQTT的环境温度检测,升级存储为mysql
本篇基于【NodeJs-5天学习】第三天实战篇③ ——基于MQTT的环境温度检测的基础上,会做升级,更加符合实际技术选型。数据存储从文件改为mysql数据库所以本篇更偏向于差异点,其他知识直接查看基础篇,不会从头到尾重复一遍。篇④结合ESP8266来开发简单物联网应用——获取多个ds18b20节点的温度,上报到本地部署的mqtt服务器,同时启动express服务器,提供一个可视化页面查看曲线图。麻雀虽小五脏俱全,初学者需要理解数据库存储操作以及对接QQ、服务请求等等对应的知识点并加以实际应用。原创 2023-03-12 10:13:45 · 456 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第四天存储篇③ ——基于物联网的WiFi自动打卡考勤系统,升级存储为mysql,提醒功能改为QQ
本篇基于【NodeJs-5天学习】第三天实战篇② ——基于物联网的WiFi自动打卡考勤系统的基础上,会做以下两点升级,更加符合实际技术选型。数据存储从文件改为mysql数据库提醒功能从飞书群改成QQ群所以本篇更偏向于差异点,不会从头到尾重复一遍。【NodeJs-5天学习】第三天实战篇④ ——QQ机器人,实现自动回复、重要提醒【NodeJs-5天学习】第二天篇① ——fs文件系统esp8266开启混杂Sniffer模式(设备端代码此次不需要改动,我们重点关注NodeJS实现即可)原创 2023-03-12 10:11:03 · 369 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第四天存储篇② ——NodeJs连接操作mysql 8.0
在前一篇【NodeJs-5天学习】第四天存储篇① ——安装使用mysql 8.0中我们讲解了如何搭建mysql数据库服务器并且能够进行简单的CURD操作,那么本篇我们继续来学习一下如何使用NodeJs连接MySQL。本篇是基于【NodeJs-5天学习】第四天存储篇① ——安装使用mysql 8.0进行讲解,所以务必先学习该篇。篇②主要介绍nodejs下的mysql简单使用,关于mysql深入学习请自行搜索学习,博主很难在一篇文章中深入讲解,更多的是抛砖引玉。原创 2023-03-12 10:07:24 · 477 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第四天存储篇① ——安装使用mysql 8.0
截取自百度百科。天猫淘宝上热卖产品,个人历史订单微信朋友圈聊天记录手机本地通信录可以毫不夸张地说,只要涉及到互联网,始终离不开数据。那么数据就得有地方去存放,并且是持久化存放(总不能全部数据直接加载在内存中,然后断电GG)。并且为了快速查询到我们需要的数据(一些大系统数据库至少过T,总不能全库扫描),那么总得有一个系统去帮我们做这件事情。持久化存储(硬盘文件系统)快速查询目标数据。原创 2023-03-12 10:05:25 · 487 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第三天实战篇④ ——QQ机器人,实现自动回复、重要提醒
NodeJs能否实现一个QQ机器人,对于一些重复性的信息能够自动回复或者一些重要时刻做一些信息提醒?在一个群组里面的时候,当有人@你要物联网学习资料的时候,可以直接回复发送出去,类似于公众号里面的自动回复对于一些重要的节日,能够给一些特别的朋友发送一些问候每天固定时间发送天气预报带着以上这些问题,来进入本篇的知识学习。学习QQ模块oicq篇④结合ESP8266来开发qq机器人应用——自动回复某些特定匹配信息。麻雀虽小五脏俱全,初学者需要理解oicq并加以实际应用。原创 2023-03-12 10:01:46 · 1457 阅读 · 2 评论 -
【物联网服务NodeJs-5天学习】第三天实战篇③ ——基于MQTT的环境温度检测
说到物联网,基本上离不开一个网络协议——MQTT。而在NodeJs中集成MQTT服务器也是非常简单易行,这里我们就构建一个简单的基于本地MQTT服务器的环境温度检测小系统。篇③结合ESP8266来开发简单物联网应用——获取多个ds18b20节点的温度,上报到本地部署的mqtt服务器,同时启动express服务器,提供一个可视化页面查看曲线图。麻雀虽小五脏俱全,初学者需要理解文件系统、服务请求等等对应的知识点并加以实际应用。原创 2023-03-12 09:59:38 · 905 阅读 · 1 评论 -
【物联网服务NodeJs-5天学习】第三天实战篇② ——基于物联网的WiFi自动打卡考勤系统
在学习ESP8266 WiFi探针时,我们了解通过Probe Request帧可以获取到无线设备(手机、手提电脑等)的MAC地址。MAC地址可以简单理解为无线网卡地址。每一块无线网卡出厂时都会由厂家分配全球唯一的MAC地址,用来表示它的唯一性。现代社会上,基本上人手一部智能手机,自带wifi功能。只要我们打开了WiFi功能,我们就可以通过自动捕获手机发出的 802.11 帧 来获取到对应的手机MAC地址。当我们在后台服务器上预先配置好 MAC地址与用户信息的关联关系(比如用户名字、用户工号、学生编号。原创 2023-03-12 09:56:53 · 675 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第三天实战篇① ——10行代码给她造个熬夜提醒睡觉机器人
假设你有个女朋友,整天拖延症熬夜刷抖音,那么可以给她造个熬夜提醒睡觉机器人 —— 每天晚上12点准时提醒睡觉。当然,前提你得有个女朋友或者假装以后会有一个来继续完成代码编写。篇①以10行代码做了一个简单熬夜提醒功能,接入微信推送功能,给心爱的她造一个微信机器人。原创 2023-03-12 09:55:08 · 303 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第二天篇④ ——项目模块化
前面在讲解很多工程代码的时候,基本上都会把所有代码写在了一个js文件里面。这在编程领域肯定是无法接受的。这就需要我们对项目代码进行分层、拆分模块等等。用一句话来说就是如何对代码结构进行优化。本篇我们会基于express项目讲解如何做合理拆分。【NodeJs-5天学习】第二天篇③ ——Express Web框架 和 中间件使用require()加载自定义模块时,必须指定以./或 ../开头的路径标识符。原创 2023-03-12 09:54:05 · 526 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第二天篇③ ——Express Web框架 和 中间件
在前面一篇【NodeJs-5天学习】第二天篇② —— 网络编程(TCP、HTTP、Web应用服务)我们讲解了HTTP服务器相关内容,但是你会发现我们需要关注非常多的细节(比如需要人工编码干预body的解析,需要分发请求方法等等),用起来有点复杂,开发效率低。那么有没有一些更加简单快捷的方式来创建web服务器?当然有,这就是本篇要重点讲解的Express框架。那我们先看看它和HTTP模块的关系。不使用Express 能否创建 Web 服务器?能,使用 Node.js提供的原生http 模块即可。原创 2023-03-12 09:51:16 · 360 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第二天篇① ——fs文件系统
篇①主要是通过简单学习fs文件模块来操作服务器存储系统,后面会在配置信息或者存储客户端信息用到。原创 2023-03-12 09:48:16 · 232 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第二天篇② —— 网络编程(TCP、HTTP、Web应用服务)
篇②主要是通过简单学习网络编程TCP、HTTP、Web应用部分,这是属于Node内置提供的模块,一般用于学习加深理解即可。一般情况下我们会基于Node提供的基础API进一步封装出框架来方便使用,比如下一篇讲解的Express框架。但是博主还是希望大家可以多点了解底层原理而不是简单调用API方法。原创 2023-03-12 09:46:34 · 350 阅读 · 2 评论 -
【物联网服务NodeJs-5天学习】第一天篇④ ——了解NodeJs回调函数和事件驱动机制
篇④主要讲解了一下回调函数的定义以及NodeJs中经典的事件驱动模型(特别是单线程性能)。当然,对于初学者不理解也没有问题,先有个概念。如果要实现多线程操作怎么办?原创 2023-03-12 09:42:52 · 272 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第一天篇③ —— VsCode上运行第一个NodeJs 程序,配置自动重启插件 nodemon
篇③我们主要学习第一个NodeJs代码,了解整个NodeJs代码是如何运行以及基本编译命令。同时配置了插件 nodemon,支持热重载代码。原创 2023-03-12 09:43:09 · 1691 阅读 · 4 评论 -
【物联网服务NodeJs-5天学习】第一天篇② —— 安装NodeJs环境以及VsCode开发工具
在开发NodeJs服务中,我们经常性会和NPM工具打交道,并且会从NPM仓库去下载很多有用的第三方包(基于内置API基础上封装出来的代码),协助我们完成项目开发。那么我们就必须先了解一些基本命令。建议大伙都输入一下命令查看一下效果篇②我们主要先把NodeJs运行环境搭建起来,并且按照VsCode开发工具。先把工具准备好,才能继续下一步的代码学习。原创 2023-03-12 09:40:55 · 717 阅读 · 0 评论 -
【物联网服务NodeJs-5天学习】第一天篇① —— 第一次认识NodeJs
Node.js是一个基于ChromeV8引擎的JavaScript运行环境,适合于前端开发人员去开发后端服务(听起来有点像全栈,至少提供了这样的可行性技术。强烈建议点开一下官网,后面我们也会经常翻阅官方Api文档。我们打开一下API文档。随意挑选一个版本点击看看,比如这里博主选择了这些模块会是我们后期学习的重点内容。这里暂且了解即可。并且这个文档我们会经常性翻阅。原创 2023-03-12 09:34:48 · 781 阅读 · 0 评论