使用 Electron 编写一个简单的截图工具

为了解决个人的 OCR 识别和翻译的需求,我使用 Electron 编写过一个 OCR识别翻译 程序,这个程序的截图功能是通过调用微信截图的 dll 实现的。微信截图的 dll 是一个截图工具,需要通过鼠标框选来截图,不能指定截取区域,也不能跨平台,所以...

Linux 安装和配置 Caddy + PHP + MySQL

最近更换了服务器的提供商,服务器上的网站之类的也需要迁移,因为我没有用 Docker 来部署,所以运行环境之类的也需要重新安装。我的博客运行环境使用的是 PHP + Nginx,安装和配置都是使用宝塔面板来完成的。这次我准备把 Web 服务器换成 Cad...

在浏览器和 Node.js 使用 WebSocket

WebSocket 是一种网络通信协议。WebSocket 只需要建立一次连接,客户端和服务端之间就可以很方便的发送数据,最主要是服务端也可以主动发送数据,不需要每次都由客户端先发起请求。HTTP 是一种单向通信方式,客户端发送请求,服务端响应回复,然后...

Node.js 使用 Nodemailer 模块发送邮件

在网站开发中,发送邮件是一个经常会遇到的需求。比如注册账号的时候,可以通过邮件来验证邮箱地址,服务变更或账号异常的时候,也可以通过邮件来通知。我的博客在回复评论的时候,也会有邮件通知。我用来发送邮件的模块是 Nodemailer,这是一个第三方的邮件模块...

Node.js 项目打包为 exe 可执行文件

如果你想要把你写的 Node 脚本发给别人使用,你可能需要指导对方下载安装 Node.js 运行环境,毕竟大多数电脑上都不会安装有 Node.js。把 Node 脚本打包为 exe 后,可以直接在没有安装 Node.js 的电脑或服务器上运行,不需要再安...

Node.js Web 模板引擎 Eta 的简单使用

在 Node.js 中,如果需要在服务端渲染 HTML 就需要通过拼接字符串的方式来实现。简单的 HTML 使用 ES6 的字符串模板也能勉强凑合,但是复杂一些的,需要涉及到循环之类的写起来就不太方便了,后期也不好维护。模板引擎可以让你在单独的文件中按照...