
已经成为许多从事 *** 应用的开发者的首选运行环境。Node.js是为运行用世界上更流行的编程语言之一的编写的代码而构建的,它使大量的开发者社区能够构建服务器端应用程序。
Node.js通过JavaScript库支持代码重用性,但选择更好的库可能是令人生畏的。有用的库可以加速开发时间,并对你的 *** 应用有广泛的好处,包括更快的加载时间和减少应用包的大小。
在选择一个库时,你要考虑应用程序的复杂性、库背后的社区、更新的频率,以及它的文档质量。
Node.js中的库是使用Node.js包管理器管理的,它可以帮助安装许多开源库。我们已经确定了13个Node.js的基本库,这些库使 *** 开发者的生活更加轻松。
Node.js是一个开源的、用于JavaScript代码的服务器端运行环境。它有一个异步架构和跨平台兼容性,使其成为 *** 开发的流行基础。
Node.js使用事件驱动和非阻塞式I/O,这使得它在处理大量数据的实时分布式应用中非常高效。
库,或模块,是预先写好的代码,抽象出常用的任务。你可以使用库来加快编码过程,促进代码的可重用性,帮助保持你的工作 “DRY”(不要重复自己)。
与框架相比,库包含完整的功能,你可以在任何开发阶段将其纳入一个项目。另一方面,框架通常为整个应用程序提供一个骨架,通常对其构建方式有重大影响。
让我们看看这些Node.js库中的13个,并探讨它们的优势。
是一个基于承诺的Node.js对象关系映射器(ORM)工具,帮助开发者更容易地与关系型数据库合作。它支持诸如、、、等数据库。
使用JavaScript对象,Sequelize对数据库表的结构进行建模,并连接到所需的关系数据库以查询和转换数据。然后它解析并将检索到的数据作为一个JavaScript对象返回。

Sequelize logo
Sequelize库的特点和优势
是一个Node.js包,用于提供跨源资源共享(CORS),作为借鉴/的中间件。
CORS包在Node.js路由中间件周围形成一个封装,使应用程序能够访问来自其自身以外的域的资源。它吸收了多个参数来配置跨源选项,包括原点、头文件等。

CORS代码(配置)的一个例子
CORS库的特点和优势
使从Node.js服务器发送电子邮件更加容易。它使用一个依赖于简单邮件传输协议( *** TP)的传输对象,以及其他。这个传输对象将 from, to, subject, body和其他参数作为输入来构建一个消息。

Nodemailer的标志
Nodemailer库的特点和优点
是一个用于Node.js的模块化认证中间件。Passport具有500多种认证策略,包括谷歌、Facebook、Twitter以及其他定制和单点登录(SSO)供应商。策略包括正常的用户名和密码认证,使用的社交媒体网站的委托认证,以及用于联合认证的。

Passport logo
Passport库的特点和优点
是一个强大的Node.js工具模块,它通过与JavaScript “async” 或回调接受函数合作,帮助开发者处理异步JavaScript。如果你向Async模块传递一个回调数组,它就会执行并包装这些回调以返回一个承诺。

Async的标志
Async库的特点和优点
是一个Node.js日志库,支持多种传输的通用日志。这些运输工具根据你的应用程序的需求来存储和配置日志。
除了默认的, createLogger 函数可以帮助你创建自定义的日志器,使用可用的传输选项,如控制台、文件和数据库。自定义日志器也可以与自定义传输器一起使用。

一个Winston代码示例
Winston库的特点和优点
是一个基于Node.js的对象建模工具,也被称为对象数据建模(ODM)库,它提供了各种功能,如挂钩、模型验证、连接和查询。
Mongoose为应用数据提供了一个基于模式的解决方案,在应用层强制执行一个单一的模式,在MongoDB中形成一个 *** 。每个模式都与Mongoose模型相关联,它允许你对MongoDB *** 运行查询,比如获取、更新和删除数据。

Mongoose的标志
Mongoose库的特点和优点
是一个Node.js通信库,在客户端浏览器和服务器之间建立实时、双向、基于事件的通信。
它使用在服务器和客户端之间建立一个底层连接,通过HTTP长轮询使用数字握手。一旦它建立了连接,客户端和服务器的通信就通过TCP实时进行。

Sockets.IO的标志
Sockets.IO库的特点和优点
是一个实用程序库,可以帮助开发者编写简明和可维护的JavaScript代码。它有200多个实用功能来简化日常编程任务,包括类型检查、简单的数学运算等等。

Lodash的标志
Lodash库的特点和优点
filter, find, 和 flatMap等操作是一个基于承诺的客户端,用于浏览器和Node.js。它还根据需要处理来自浏览器或Node.js的请求和响应数据的转换。
Axios是同构的,这意味着它可以用相同的代码库在服务器和客户端运行。对于HTTP通信,Axios在服务器端使用本地HTTP模块,在客户端使用XMLHttpRequest。

Axios的标志
Axios库的特点和优势
GET, PUT, POST, 和 DELETE 等常见的HTTP数据类型提供内置的API函数是一个Node.js库,通过提供一个高级API来控制Chrome/Chromium,从而实现Chrome的自动化。它可以自动进行前端测试,包括请求处理测试、定位和比较UI元素、性能测试等。
开发人员可以将Puppeteer包导入他们的代码中,创建一个Chromium实例。然后,该实例可以通过与浏览器引擎进行通信来实现自动化测试。

Puppeteer的标志
Puppeteer库的特点和优点
是一个用于Node.js的中间件库。它写在HTML表单解析器之上,处理多部分和多形式数据。
在初始化Multer实例后,它接收了一个 dest 对象作为其选项之一,以指定上传的文件将被存储在服务器上。Multer与上传请求一起发送一个 file 对象,然后由Multer API解析并发送至目标位置。

一个带有HTML表单标记的Multer代码的例子
Multer库的特点和优点
是一个Node.js实用程序库,用于管理应用程序中的环境变量,并保护敏感的配置变量。Dotenv还帮助应用程序在存储环境变量时遵循应用 *** 。早期配置Dotenv库会自动将环境变量从.env注入到provess.env。

Dotenv的标志
Dotenv库的特点和优点
Node.js有大量有用的库,但为你的项目选择一个更好的库可能很困难。我们在这里介绍的一些Node.js库可能是你下一个应用程序的 “必备品”。
例如,如果你主要与MongoDB一起工作,使用Mongoose可以是一个救星。CORS可以帮助你从多个域传递内容,如果你需要在团队中分享代码–但不是秘密–Dotenv就会非常方便。
不久前,PHP 8.0大张旗鼓地发布了。它带来了许多新特性、性能增强和变化——其中最令人兴奋的是新的JIT编译器。 技术世界总是在向前发展,PHP也是如此。 ,包含了几个令人兴奋的特性。它定于今年晚些时候于2021年11月25日发布。 在本文中,我们将详细介绍PHP 8.1将带来哪些新的东...
宝塔面板设置主要涉及的是宝塔控制后台自身的参数,包括诸如面板的开关、自动更新及SSL、面板端口设置等。虽然这部分不涉及服务器自身的管理,但对宝塔面板的设置也有其重要。 特别是面板端口、安全入口及面板密码等涉及安全的参数设置。 启动和关闭面板 如果你长时间无需使用到宝塔面板,可以考虑...
PHP 8.2预计将于今年11月发布,最新的稳定版本是PHP 8.1.5。虽然现在还为时过早,但对更新的接受程度参差不齐。 但是,知道会发生什么可以帮助您。通过了解新功能和不推荐使用的功能,您可以了解更新可能如何影响开发。这些知识还可以帮助您为最终发布做好准备。 在这篇文章中,我们将回顾最新...
数据库本质上是任何软件的支柱。随着市场上的多个数据库以及的日益普及,许多开发人员和企业都有一个共同的担忧:您如何选择合适的? 在本文中,我们将讨论最流行的两个开源数据库——MariaDB和PostgreSQL。 虽然PostgreSQL已经存在了20年并且在稳定性方面非常出色,但MariaD...
数据库结构是应用程序或软件开发的一个组成部分,尤其是那些围绕数据和数据库的开发。简而言之,数据库结构是用于定义一组数据的结构或布局的术语。 换句话说,它描述了数据将如何组织和连接。因此,数据库结构可能包括结构对象,如表、视图、字段、关系、包、索引、类型和许多其他元素。 数据库设计者创建数据库...
PHP 8.2建立在PHP 8.0和PHP 8.1的更新基础之上。计划于。 本文将详细介绍PHP 8.2中的新功能 — 从其新功能和改进到弃用和细微更改,我们将一一介绍。 随着PHP 8.2于2022年7月19日进入其功能冻结状态,您可以预期此列表不会有重大添加。...