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)
相关推荐
moshuying24 分钟前
扩散模型开始写代码、开网页了:350 亿参数,速度比 Jev 快一倍
前端·算法
qq_4017004140 分钟前
100 个 IoT 小项目,给 ESP32 入门补上实操
前端·网络·stm32
输出输入1 小时前
学习前端主流书单推荐
前端
anyup1 小时前
uView Pro X 1.0.0 发布:全面支持 uni-app x 蒸汽模式,80+ 组件
前端·uni-app·ai编程
Brilliantwxx1 小时前
【Linux】 文件访问与路径解析:目录、文件名、dentry、路径缓冲与 dcache 全解析
linux·运维·服务器·开发语言·spring
apollo_qwe1 小时前
大模型 API 接通了,AI 聊天页面为什么还是不好用?
前端·vue.js·人工智能
爱勇宝1 小时前
你可能成不了技术大佬,然后呢?
前端·后端·程序员
疯华整猫2 小时前
从 MVP 到 MVI,从 Java 到 Kotlin:老项目升级的避坑指南
前端
徐小夕@趣谈前端2 小时前
Web 端 OFD 编辑器踩坑记:从“只能预览”到“在线改”
前端·编辑器