Node.js基础入门之path模块,url模块,http模块使用详解

Node.js基础入门之path模块,url模块,http模块使用详解

1. path模块的使用

path模块是Node.js中内置的一个用于处理文件路径的模块。在使用path模块时需要先引入模块,引入模块后就可以使用其中的方法了。

1.1 获取文件名

使用path模块中的basename方法可以获取文件名,比如我们有一个路径为/user/local/test.txt的文件,需要获取它的文件名,代码示例如下:

const path = require('path');
const fileName = path.basename('/user/local/test.txt');
console.log(fileName);
// 输出结果为:test.txt

1.2 获取文件路径

使用path模块中的dirname方法可以获取文件路径,代码示例如下:

const path = require('path');
const filePath = path.dirname('/user/local/test.txt');
console.log(filePath);
// 输出结果为:/user/local

1.3 获取文件后缀名

使用path模块中的extname方法可以获取文件后缀名,代码示例如下:

const path = require('path');
const fileExt = path.extname('/user/local/test.txt');
console.log(fileExt);
// 输出结果为:.txt

2. url模块的使用

url模块是Node.js中内置的一个用于解析URL的模块。在使用url模块时需要先引入模块,引入模块后就可以使用其中的方法了。

2.1 解析req.url

在Node.js的http模块中,通过req.url可以获取HTTP请求的URL路径,而使用url模块中的parse方法可以对URL路径进行解析,获取其中的各个部分,代码示例如下:

const http = require('http');
const url = require('url');

http.createServer((req, res) => {
    const urlObj = url.parse(req.url);
    console.log(urlObj);
    // 输出结果为:
    // Url {
    //     protocol: null,
    //     slashes: null,
    //     auth: null,
    //     host: null,
    //     port: null,
    //     hostname: null,
    //     hash: null,
    //     search: '?name=张三&age=18',
    //     query: { name: '张三', age: '18' },
    //     pathname: '/',
    //     path: '/?name=张三&age=18',
    //     href: '/?name=张三&age=18'
    // }
}).listen(3000);

2.2 拼接URL路径

使用url模块中的resolve方法可以拼接URL路径,代码示例如下:

const url = require('url');

const fullUrl1 = url.resolve('https://www.baidu.com', '/index.html');
console.log(fullUrl1);
// 输出结果为:https://www.baidu.com/index.html

const fullUrl2 = url.resolve('https://www.baidu.com/news', '/index.html');
console.log(fullUrl2);
// 输出结果为:https://www.baidu.com/index.html

3. http模块的使用

http模块是Node.js中内置的一个用于构建HTTP服务器和客户端的模块,使用http模块可以方便地实现Web应用。在使用http模块时需要先引入模块,引入模块后就可以使用其中的方法了。

3.1 构建HTTP服务器

使用http模块中的createServer方法可以构建HTTP服务器,代码示例如下:

const http = require('http');

http.createServer((req, res) => {
    res.writeHead(200, { 'Content-Type': 'text/html' });
    res.write('<h1>Hello, World!</h1>');
    res.end();
}).listen(3000);

3.2 发送HTTP请求

使用http模块中的request方法可以发送HTTP请求,代码示例如下:

const http = require('http');

const options = {
    hostname: 'www.baidu.com',
    port: 80,
    path: '/',
    method: 'GET',
};

const req = http.request(options, (res) => {
    console.log('statusCode:', res.statusCode);
    console.log('headers:', res.headers);
    res.on('data', (d) => {
        process.stdout.write(d);
    });
});

req.on('error', (e) => {
    console.error(e);
});

req.end();

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Node.js基础入门之path模块,url模块,http模块使用详解 - Python技术站

(0)
上一篇 2023年6月8日
下一篇 2023年6月8日

相关文章

  • node.js中watch机制详解

    Node.js中watch机制详解 在Node.js中,可以使用fs.watch和fs.watchFile方法来监视文件或目录的变化,这就是我们通常所说的 watch机制。接下来,我们将深入了解它的用法和注意事项。 使用fs.watch监视文件或目录的变化 fs.watch是一个非常基础的Node.js API,它可以监视一个文件或目录,并在文件或目录的内容…

    node js 2023年6月8日
    00
  • node koa2 ssr项目搭建的方法步骤

    下面我将详细讲解“node koa2 ssr项目搭建的方法步骤”的完整攻略。 一、准备工作 在开始搭建SSR项目之前,需要确保本地环境已经包含了Node.js和npm工具。如果你的电脑上还没有安装这两个工具,可以到官网下载安装。 二、创建项目 创建一个项目文件夹 打开终端,进入你的工作目录,执行以下命令: mkdir ssr-project &&am…

    node js 2023年6月8日
    00
  • Node.js实现登录注册功能

    下面我将详细讲解“Node.js实现登录注册功能”的完整攻略,包含以下几个步骤: 安装Node.js和相关依赖 创建项目文件夹并初始化,安装必要的依赖 编写前端页面 编写后端接口 配置数据库连接 实现注册功能 实现登录功能 使用Session存储登录状态 下面我将详细讲解每一步的具体实现细节。 1. 安装Node.js和相关依赖 首先,我们需要安装Node.…

    node js 2023年6月8日
    00
  • NodeJs Express中间件超详细讲解

    首先,我们需要了解什么是Node.js Express中间件。中间件是指在处理HTTP请求时,可以在请求到达业务逻辑之前或之后,对请求进行一些操作或修改。在Express中,中间件是处理HTTP请求的基本单元,它可以通过app.use()方法注册到应用程序中。 在Express中,中间件分为四种类型: 应用级中间件:在应用程序级别注册的中间件,会拦截所有的H…

    node js 2023年6月8日
    00
  • Vue3.0中的monorepo管理模式的实现

    Vue 3.0采用了monorepo管理模式,它允许开发者在一个代码仓库中管理多个相关项目,有效提高了资源的可复用性和管理效率。下面是实现Vue3.0中的monorepo管理模式的完整攻略。 创建monorepo仓库 首先,我们需要创建一个monorepo仓库用于存放多个相关项目。可以选择使用GitHub或者GitLab等平台的仓库,也可以使用本地Git仓库…

    node js 2023年6月9日
    00
  • 详解Node.js模板引擎Jade入门

    详解Node.js模板引擎Jade入门 什么是模板引擎? 在使用Node.js开发Web应用时,我们需要将数据和页面内容结合,生成动态的HTML页面。模板引擎就是用来将数据和页面内容结合的工具。它可以生成HTML、XML、JSON等格式的数据,同时具有易于维护、快捷灵活、模板重用等优点。 为什么要使用模板引擎? 在服务器端动态生成网页的时候,需要对HTML文…

    node js 2023年6月8日
    00
  • JavaScript实现的链表数据结构实例

    通过JavaScript实现链表数据结构,可以实现一些常见的操作,比如在链表的末尾添加元素、删除链表元素、获取链表的长度等等。下面将介绍JavaScript实现链表数据结构的完整攻略。 创建一个链表类 首先,我们需要定义一个链表类,该类应该包含以下几个方法:链表的构造函数、获取链表长度的方法、在链表末尾添加元素的方法、在任意位置插入元素的方法、根据值删除元素…

    node js 2023年6月8日
    00
  • 在微信小程序中渲染HTML内容3种解决方案及分析与问题解决

    在微信小程序中渲染HTML内容3种解决方案及分析与问题解决 在微信小程序开发中,我们常常需要将从网络请求到的HTML内容渲染到小程序页面上。但是,微信小程序原生并不支持直接渲染HTML内容,因此我们需要使用其他解决方案来完成这项任务。本文将以三种解决方案为例,分析其优缺点以及问题解决方法。 方案一:使用rich-text组件渲染HTML内容 微信小程序提供了…

    node js 2023年6月8日
    00
合作推广
合作推广
分享本页
返回顶部