Node.js入门指南
Node.js已经证明了自己在web开发中是一个强大的工具,由于其效率、可靠性和可伸缩性而受到开发人员的欢迎。在深入研究任何事情之前有一个基本的了解,在一个地方知道所有的事情是一种很好的感觉。如果您想深入了解Node.js,那么您必须来到正确的地方。阅读本文后,用户可以开始用Node.js编写代码脚本。
这篇文章将涵盖:
- 什么是Node.js?
- Node.js是如何工作的?
- 如何在Windows上安装Node.js ?
- 如何在Mac上安装Node.js ?
- 如何在Linux上安装Node.js ?
- 如何编写第一个Node.js程序?(Hello World)
- 如何导入节点核心模块?
- 如何安装NPM包?
- 如何开始使用Express JS?
- 如何在Express中渲染静态文件?
- 如何在Express中渲染动态文件?
- 结论
什么是Node.js?
谷歌搜索引擎上最常搜索的问题是什么是Node.js?最常见的问题是:Node.js是一种编程语言吗?它是一个框架吗?是图书馆吗?为了简化,Node.js可以定义为一个由JS库支持的运行时环境。
一个众所周知的、开源的、跨平台的Javascript运行时环境是Node.js。由于它的适应性,它可以用于任何项目或应用。它的与众不同之处在于使用了V8引擎,与谷歌Chrome的引擎相同。这使得Node.js成为在服务器端编写脚本和在开发环境之外执行代码脚本的最佳选择。
Node.js与其他服务器端编程语言有很大的不同。值得注意的是,它不是后端服务器或web服务器。单独使用时,它不能做任何事情,只有一组模块可以帮助创建一个可扩展的项目。它在单个服务器上运行,不会为每个请求生成额外的线程。此外,非阻塞范式用于编写大多数NodeJS库,因此阻塞行为是例外而不是规则。异步I/O原语是Node.js标准库的一个特性,它可以防止JavaScript代码阻塞。
当Node.js执行I/O操作时,比如在网络上执行crud操作,它不会阻塞线程并浪费CPU周期等待响应;相反,它将在接收到响应后恢复操作。
Node.js简单示例
一个理解Node.js概念的简单例子是创建一个web服务器并编写一些文本。因为这是对Node.js的介绍,所以让我们将介绍行添加到web端口:
Const HTTP = require(' HTTP ');
serverPort = 3000;
Const server = http。createServer((req, res) => {
res.statusCode = 200;
res.setHeader(“内容类型”、“文本/普通”);
res.end(' Node.js初学者入门指南!n');
});
服务器。listen(serverPort, () => {
console.log('服务器运行在http://localhost:${serverPort}/ ');
});
在此代码中:
- " const http = require(' http ') "导入http模块,该模块帮助创建http服务器并处理与之相关的功能。
- " const serverPort = 3000 "定义了服务器将操作的端口。
- " const server = http。createServer((req, res) =>{}) "使用http模块的create server方法来创建一个带有回调函数的服务器,该回调函数接受两个参数,一个是请求,另一个是将为请求生成的响应。
- 在回调函数中,HTTPS状态码设置为200,响应内容类型设置为纯文本。此外,web服务器会显示一条标题为“Node.js入门指南”的消息。
- “服务器。调用listen(serverPort,() =>{}) "来启动服务器并侦听服务器上的所有传入请求。回调函数在服务器启动后被调用,并在终端上显示一条消息,显示服务器启动时的端口。
输出
使用下面这行来执行:
节点App.js
其中App.js是应用程序的名称。
终端输出为:
这表明服务器已经启动并正在监听传入的请求。要检查服务器上的响应,请使用以下链接“http://localhost:3000/”。
服务器端的输出将显示为:
Node.js是如何工作的?
Node.js是一个帮助服务器同时处理多个请求的平台。尽管它只使用一个线程来处理请求,但它通过使用线程有效地管理输入和输出操作。线程是一组同时执行任务的指令。Node.js使用事件循环来控制任务,直到一个任务完成后才开始下一个任务。
Node.js事件循环是一个连续的半无限循环。这个循环管理Node.js中的同步和非同步事件。一旦启动Node.js项目,就会触发执行,从而无缝地将困难的任务转移到系统中。这允许主线程上的其他任务顺利运行。
为了理解和掌握Node.js中事件循环的详细概念,我们专门写了一篇关于这个主题的文章。
node . js的优点
Node.js的一些主要优点是:
- 可扩展性:双向简化应用程序的增长:水平和垂直。
- 实时Web应用:最适合需要快速同步和防止HTTP负载过多的任务。
- 速度:快速完成任务,如将数据输入或取出数据库,连接网络或处理文件。
- 易于学习:Node.js对于初学者来说很容易学习,因为它使用Javascript。
- 缓存的好处:只存储一个部分,所以没有必要再次运行代码,缓存是一个快速的内存,节省了额外的加载时间。
- 数据流:将HTTP请求和响应作为不同的事件处理,从而提高性能。
- 托管:很容易放在PaaS和Heroku这样的网站上。
- 企业支持:Netflix、SpaceX、沃尔玛等大企业使用。
如何在Windows上安装Node.js ?
因为我们开始开发Node.js应用程序,如果我们有一个Windows环境,Node.js环境必须设置。按照下面的分步指导,在Windows操作系统中设置Node.js环境。
步骤1:下载Node.js安装包
进入Node.js官方网站,确保你下载的是最新版本的Node.js。另外,检查是否安装了npm包管理器,因为它在扩展Node.js应用程序中起着至关重要的作用。
只需点击Windows安装程序,下载将开始。下载的版本为64位,建议使用LTS(长期支持)版本。运行安装包安装Node.js。
第二步:在你的电脑上安装Node.js和NPM模块
下面的屏幕将出现,所以点击Next按钮:
单击Next后,将出现一个新窗口,用户将被要求输入下载Node.js msi库的路径。
现在在下面的窗口中选择所需的路径并点击next按钮:
点击“下一步”按钮后,您将看到一个自定义设置窗口,要求您选择要安装的软件包。从这个窗口中选择npm包管理器,默认情况下选择Node.js运行时。在npm包管理器中,Node.js和npm包都会被安装。
最后,单击Install按钮开始旅程。
步骤3:验证已安装的版本
了解安装了哪个版本是至关重要的,所以要检查它,请转到Windows的搜索栏并输入命令提示符:
在命令提示符窗口打开后,输入两个命令进行验证。
Node.js版本
可以在命令提示符中使用以下命令检查Node.js版本:
节点- v
安装的版本会显示出来
NPM版本
要检查npm的版本,使用以下命令:
npm - v
npm的版本会出现在终端中。
现在,您可以通过设置Node.js环境开始开发应用程序了。
并不是所有的用户都在使用Windows,所以希望能够满足每个人的需求。下面是在Mac上安装Node.js的过程。
如何在Mac上安装Node.js ?
对于使用Mac的用户来说,Windows的安装过程与Mac完全相同。到Node.js官方网站下载Mac版本的包。
步骤1:下载Mac版软件包管理器
访问Node官方网站,下载NodeJS的MacOSInstaller:
https://nodejs.org/en/download/current
点击上面屏幕中的指定按钮开始下载。
用户可以指定要安装的位置。
步骤2:安装Node.js .pkg文件
运行安装文件并按照安装指南进行安装:
点击“Install”按钮,开始安装Node.js。
NodeJS安装完成后,会显示如下摘要:
点击“关闭”按钮完成安装。
步骤3:验证Node.js安装和版本
为了验证Node.js是否已经安装,并检查其版本,使用以下命令:
节点——版本
步骤4:全局升级NPM
执行下面的命令为所有使用" -global "标志的系统用户升级NPM:
安装NPM—global
步骤5:将节点路径设置为$ Path变量
执行如下命令设置NodeJS的PATH变量:
导出路径= / usr /地方/ git / bin: / usr /地方/ bin:美元的道路
注意:在上面的命令中,“/usr/local/bin”是默认安装NodeJS的位置。
步骤6:更新“.bash_profile”中的PATH详细信息
将路径详细信息添加到“~/”中。Bash _profile "使用下面给出的命令:
echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bash_profile
步骤7:更新~/.bashrc
要使它可供所有用户使用,请执行以下命令:
源~ / . bashrc
这就是关于安装NodeJS和在MacOS中为NodeJS设置PATH变量的内容。
如何在Linux上安装Node.js ?
要在任何基于debian的Linux操作系统上安装Node.js,请遵循以下步骤:
步骤1:打开终端
首先,使用“CTRL+ALT+T”快捷键启动终端:
步骤2:更新和升级系统
执行以下命令来更新和升级系统的存储库:
Sudo apt update && Sudo apt upgrade -y
步骤3:使用apt包管理器安装Node
更新系统的存储库后,使用以下命令从官方APT包管理器中安装Node.js:
安装nodejs
步骤4:检查节点安装正确性
安装完成后,使用下面的命令检查Node.js的版本来验证安装是否成功:
节点- v
步骤5:安装NPM
将NPM与NodeJS一起安装是一个很好的做法,因为大多数时候都需要它。NPM也可以在官方APT存储库中使用,可以使用下面的命令安装:
安装NPM
步骤6:验证NPM安装
检查NPM版本,并使用以下命令验证NPM的安装:
npm - v
这就是在基于debian的Linux操作系统上安装Node和NPM的方法。
如何编写第一个Node.js程序?(Hello World)
所有的一切都已经准备就绪,我们将开始用Node.js开发应用程序。让我们创建第一个非常常见的程序。每当有人开始学习一门新的语言或框架时,第一个程序通常是打印“Hello World”。以一种不同的方式向每个人打招呼是一种很好的感觉,告诉他们我们新旅程的开始。下面是开始的代码:
/ / App.js
console.log(“Hello World !”);
要执行此代码脚本,请使用以下命令:
节点App.js
输出
语句Hello World将被记录到终端:
如何导入节点核心模块?
用户必须使用" require() "函数来使用所需的模块在他们的代码脚本中工作。例如,如果要使用" fs "(文件系统)模块,则导入代码行将为:
Const fs = require('fs')
这将导入该模块的所有功能并将其存储在fs变量中,这是一个常量变量,意味着它的内容不能在运行时更改。然后,通过使用“fs”变量,用户可以实现所需的功能。
现在让我们创建一个简单的代码示例,其中导入一个模块,并在代码脚本中使用其功能。
示例:使用HTTP模块
Const HTTP = require(' HTTP ');
//简单HTTP服务器
const httpServer = http。createServer((req, res) => {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write (");
res.write (");
res.write (");
res.write (");
res.write (");
res.write(“Hello World !”);
res.write (");
res.write (");
res.write ('