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

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

 核心思路

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

image.gif编辑

实现步骤

    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');
    })

    image.gif

    image.gif编辑

    服务器搭建完成

      转换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');
    })

    image.gif

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

    image.gif编辑

    这是我的文件路径image.gif编辑

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

    image.gif

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

    目录
    相关文章
    |
    1月前
    |
    开发框架 JavaScript 前端开发
    使用 Node.js 和 Express 构建 Web 应用
    【10月更文挑战第2天】使用 Node.js 和 Express 构建 Web 应用
    |
    22天前
    |
    XML JavaScript 前端开发
    JavaScript控制台:提升Web开发技能的秘密武器
    作为Web开发人员,掌握JavaScript控制台中的各种方法至关重要。本文介绍了22种实用的console方法,从基本的log()到高级的profile()和memory,每种方法都配有示例和说明,帮助开发者更高效地调试和记录信息。通过了解这些工具,您可以优化代码、提高开发速度,减少错误,使编码过程更加顺畅愉快。
    33 1
    JavaScript控制台:提升Web开发技能的秘密武器
    |
    5天前
    |
    缓存 负载均衡 监控
    性能优化:Node.js高效服务器开发技巧与最佳实践
    【10月更文挑战第29天】在Node.js服务器开发中,性能优化至关重要。本文介绍了几种高效开发的最佳实践,包括使用缓存策略、采用异步编程、实施负载均衡和性能监控。通过示例代码展示了如何实现这些技术,帮助开发者构建更快、更稳定的Node.js应用。
    18 2
    |
    12天前
    |
    JavaScript 前端开发 持续交付
    构建现代Web应用:Vue.js与Node.js的完美结合
    【10月更文挑战第22天】随着互联网技术的快速发展,Web应用已经成为了人们日常生活和工作的重要组成部分。前端技术和后端技术的不断创新,为Web应用的构建提供了更多可能。在本篇文章中,我们将探讨Vue.js和Node.js这两大热门技术如何完美结合,构建现代Web应用。
    16 4
    |
    30天前
    |
    设计模式 JavaScript 前端开发
    浅谈JavaScript 框架在现代 Web 开发中的作用
    浅谈JavaScript 框架在现代 Web 开发中的作用
    35 12
    |
    22天前
    |
    存储 JavaScript 前端开发
    深入探索 Vue.js:构建现代 Web 应用的利器
    【10月更文挑战第11天】深入探索 Vue.js:构建现代 Web 应用的利器
    14 1
    |
    24天前
    |
    JavaScript 前端开发 网络架构
    如何使用Vue.js构建响应式Web应用
    【10月更文挑战第9天】如何使用Vue.js构建响应式Web应用
    |
    24天前
    |
    JavaScript 前端开发
    如何使用Vue.js构建响应式Web应用程序
    【10月更文挑战第9天】如何使用Vue.js构建响应式Web应用程序
    |
    29天前
    |
    Web App开发 前端开发 JavaScript
    JavaScript Web Full Stack 全栈开发者路线及内容推荐
    本文详细介绍了一条全面的JavaScript全栈开发者学习路径,涵盖基础知识、前端和后端开发、数据库与API、MERN Stack与React Native、工程化与部署、安全与测试、未来趋势等方面。推荐了HTML5、CSS3、JavaScript(ES6+)、Node.js、React.js、Vue.js、Svelte、Tailwind CSS、Web Components等关键技术,并提供了丰富的书籍、博主和在线资源。此外,还回顾了JavaScript的历史,并推荐了多个活跃的社区和平台,帮助开发者紧跟技术前沿。
    |
    30天前
    |
    JSON JavaScript 前端开发
    使用 Node.js 和 Express 构建 RESTful API 服务器
    【10月更文挑战第3天】使用 Node.js 和 Express 构建 RESTful API 服务器