创建 Node.js 服务器
Node.js 最常用的核心模块是:
http - 用于启动简单的服务器,发送请求
https - 用于启动安全的 ssl http 服务器
path - 用于根据操作系统处理路径
fs - 文件系统处理模块
os - 用于操作系统相关的操作
让我们使用 Node.js 构建一个简单的 http 服务器:
在像 Visual Studio Code 这样的编辑器中创建一个 javascript 文件 App.js(随意命名)。
App.js
const http = require(‘http’); function reqListener(req, res){ console.log(‘Hello’); } const server = http.createServer(reqListener); server.listen(3000);
解释
我们使用 const 关键字而不是 var 或 let 来导入模块,因为此变量引用不会在文件中更改。
Require 是 Node 中的保留关键字,它有助于导入预定义的核心模块和用户定义的模块。
导入预定义的模块(如 http)不需要在其前面添加 ./ 。但是,如果需要导入自定义用户定义的模块,则按如下所示进行:
const user = require(‘./User’);
在 require 函数中为 javascript 文件添加 .js 扩展名不是必需的。但是其他任何文件格式都需要在 require 函数中添加扩展名。
导入的模块 http 有一个 createServer 方法,它将请求监听器作为参数。此参数函数将在每次向 Node 服务器发出新的 http 请求时执行。
我们也可以在 createServer 方法中使用匿名函数或下一代 javascript 箭头函数:
在 createServer 中使用匿名函数
const http = require(‘http’); const server = http.createServer(function(){ console.log(‘Hello’); }); server.listen(3000);
使用下一代 Javascript
const http = require(‘http’); const server = http.createServer((req, res)=>{ console.log(‘Hello’); }); server.listen(3000);
http 模块的 createServer 方法返回一个服务器。我们可以使用服务器上的 listen 方法在给定端口上运行它。listen 方法将端口号作为参数。
执行 App.js 文件
打开 App.js 文件所在的文件夹中的终端,然后运行命令:node **App.js**
运行此命令将保持一个事件循环运行,监听端口 3000 上的任何 http 请求。
检查终端上的控制台日志消息
现在,打开浏览器并导航到 localhost:3000,检查终端控制台的日志语句。在终端控制台上,我们将看到打印的 Hello 消息。
目前,我们还没有向浏览器返回任何响应,因此我们不会在浏览器上看到任何输出。我们将在接下来的文章中学习如何返回和显示浏览器上的响应消息。