【Node.js练习】web服务器案例

举报
坚毅的小解同志 发表于 2022/11/21 19:31:20 2022/11/21
【摘要】 【Node.js练习】web服务器案例

 核心思路

把文件的实际存放路径,作为每个资源的请求url地址。

编辑

 实现步骤

  1. 导入需要的模块
  2. 创建基本的web服务器
  3. 将资源的请求url地址映射为文件的存放路径
  4. 读取文件内容并响应客户端
  5. 优化资源的请求路径

 实现代码

      创建web服务器

        

//导入
//导入http模块
const http = require('http');
//导入fs系统模块
const fs = require('fs');
//导入路径模块
const path = require('path');
//创建
//创建web服务器
const server = http.createServer();
//request事件
server.on('request', function (req, res) {

})
//监听
server.listen(8080, () => {
    console.log('server running at http://127.0.0.1:8080');
})

编辑

服务器搭建完成

   转换url地址 

//导入
//导入http模块
const http = require('http');
//导入fs系统模块
const fs = require('fs');
//导入路径模块
const path = require('path');
//创建
//创建web服务器
const server = http.createServer();
//request事件
server.on('request', function (req, res) {
    const url = req.url;
    //将返回的路径进行修改拼接 再返回到客户端
    const newPath = path.join(__dirname, '/时钟案例/clock', url)
    fs.readFile(newPath, 'utf-8', function (err, data) {
        if (err) {
            return console.log(' 404' + err);
        }
        res.end(data);
    })
})

//监听
server.listen(8080, () => {
    console.log('server running at http://127.0.0.1:8080');
})

直接再 端口号后面输入/index.html就可以访问到我们的时钟主页


 编辑


 这是我的文件路径编辑


 const newPath = path.join(__dirname, '/时钟案例/clock', url)

我们输入/index.html url拿到了这个短地址  ,dirname拿到了当前文件的目录路径也就是online,我们将路径导向index.html的父级文件夹 ,三个拼接在一起 就能准确的定位到index.html文件,获取内容将其发送到客户端。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。