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)
相关推荐
码艺-Alimjan9 分钟前
Tauri 网站To桌面应用实战总结
前端·javascript·vue
颜进强30 分钟前
18 · NestJS动态模块与 forRoot:`imports: [ConfigModule.forRoot({...})]` 到底在 import 什么
前端·后端·ai编程
翼龙云_cloud36 分钟前
阿里云国际代理商:ECS部署DeepSeek大模型指南
服务器·阿里云·大模型·云计算
YZ12255241 分钟前
【Docker专题】使用Docker部署Vue-Flask项目前后端分离版【前端Docker部署】
前端·vue.js·docker
liangshanbo121543 分钟前
浏览器渲染过程:高级前端面试题
前端
太子釢1 小时前
React 函数组件与 Hook 实践指南
前端·react.js
颜进强1 小时前
17 · 自定义 Provider 四形态:useValue / useClass / useFactory / useExisting 到底在选什么
前端·后端·ai编程
传人once1 小时前
网页文字滚动效果如何做
前端·css·html·jquery·html5
2401_868534781 小时前
安全故障分析
服务器·网络·安全
liangshanbo12151 小时前
面试题:React 中 Lane 和 Scheduler 是怎么配合的?
前端·react.js·前端框架