【Node.js练习】根据不同的url响应不同的html内容
2023-09-27 14:28:32 时间
目录
核心实现步骤
- 获取请求的url地址
- 设置默认的相应内容为404 Not found
- 判断用户请求的是否为/或/index.html 返回 首页
- 判断用户请求的是否为/about.html 返回 关于页面
- 设置Content-Type响应头,防止中文乱码
- 调用res.end()方法响应给客户端
实现代码
const http = require('http');
const server = http.createServer();
server.on('request', function (res, req) {
//获取请求的url地址
const url = res.url;
//设置其他网址恢复 404 Not Found
let content = '404 Not Found';
//访问/或者/index.html则返回首页
//访问about.html则返回关于我们
if (url === '/' || url === '/index.html') {
content = '<h1>首页</h1>'
} else if (url === '/about.html') {
content = '<h1>关于页面</h1>'
}
//设置响应头
req.setHeader('Content-Type', 'text/html;charset=utf-8');
//发送消息到客户端
req.end(content);
})
server.listen(8080, () => {
console.log('server running at http://127.0.0.1:8080');
})
运行之后点击链接进去页面
进去之后默认的就是首页也就是/当我们再地址栏输入index.html同样也是首页
我们改成about.html试一试
输入其他页面则是404
相关文章
- 如何写出小而清晰的函数?(JS 版)
- js实现svg图形转存为图片下载
- 解决vue报错:Module build failed (from ./node_modules/_eslint-loader@2.2.1@eslint-loader/index.js): TypeError: Cannot read property 'range' of null
- vue.js修饰符
- js 读取文件
- ****timeago.js插件:jquery实现几分钟前、几小时前、几天前等时间差显示效果的代码实例
- js 闭包
- 不同JS环境use strict对反复属性处理的差异
- JS 中函数名后面加与不加括号的区别
- Strip JS – 低侵入,响应式的 Lightbox 效果
- Node.js Web 开发框架大全《路由篇》
- Glide.js:响应式 & 触摸友好的 jQuery 滑块插件
- JS中那些让人头昏眼花的弯子
- JS中event.keyCode用法及keyCode对…
- Windows下构建Node.js的Docker Nano Server基础镜像
- 原生js操作option
- Vue.js 源码解析
- Babel是如何读懂JS代码的
- 利用Vue.js实现拼图游戏
- 从QQ登录的js sdk中,研究html、css以及js的解耦