nodejs中http模块搭建web服务器

先看一下常见教程的写法,他们一般都是采用传入回调函数作为方法参数的写法,其实本质也是用的事件回调,这种方式也只适合简单的场景,下面看代码:

javascript 复制代码
const http = require('http')

const hostname = '127.0.0.1'
const port = 3000

// 通过createServer来创建一个服务对象
const server = http.createServer((req,res) => {
    res.end('Hello World!!!')
})

// 服务对象监听特定的端口,也就是启动这个服务器
server.listen(port, hostname, () => {
    console.log('服务已启动...');
    
})

在看一下通过事件事件回调的方式来创建web服务器:一般都是先注册好所有可能的事件以及对应的回调,最后在调用listen()方法启动服务器

javascript 复制代码
const http = require('http')

const hostname = '127.0.0.1'
const port = 3000

// 通过createServer来创建一个服务对象
const server = http.createServer()
server.on('request', (req,res) => {
    res.end('Hello World!!!')
})

server.on('listening', () => {
    console.log('服务已启动...');
})

// 服务对象监听特定的端口,也就是启动这个服务器
server.listen(port, hostname)
相关推荐
之歆4 分钟前
DAY_12JavaScript DOM 完全指南(三):高级工程篇
开发语言·前端·javascript·ecmascript
来恩10038 分钟前
EL表达式应用
前端·javascript·vue.js
希冀1239 分钟前
【CSS学习第十篇】
前端·css
快乐的哈士奇12 分钟前
历史对话关联 RAG 上下文检索 — 内部技术介绍
服务器·数据库·oracle
土星云SaturnCloud17 分钟前
32TOPS工业级算力+无风扇全密封!土星云SE110S-WA32边缘计算微服务器深度测评
服务器·人工智能·ai·边缘计算
小飞侠是个胖子17 分钟前
在 WebGL 中构建高性能 3D 沉浸式系统的三套高阶方案
前端·3d
宋浮檀s18 分钟前
Linux后门持久化排查
linux·运维·服务器
wh_xia_jun19 分钟前
Vue3 + Vitest 浏览器测试 从零开发指南
前端·javascript·vue.js
诗句藏于尽头20 分钟前
服务器入侵事件复盘:从发现到修复的完全指南
运维·服务器
FlyWIHTSKY21 分钟前
区块链前端技术栈介绍
前端·区块链