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对数据进行MD5加密

    让我详细讲解一下如何通过Node.js对数据进行MD5加密的完整攻略。 什么是MD5加密 MD5加密是一种广泛用于数据安全领域的加密方式。它将任意长度的消息以一种不可逆的方式转换成一个长度固定的消息摘要(即16进制数字表示的32位字符串),以保证数据传输的安全性。 使用Node.js进行MD5加密 在Node.js中,可以通过crypto模块进行数据加密操作…

    node js 2023年6月8日
    00
  • JS判断对象属性是否存在的五种方案分享

    下面是”JS判断对象属性是否存在的五种方案分享”的攻略: 方案一:in操作符 使用in操作符判断对象是否存在某个属性。 语法: 属性名 in 对象 示例: const student = { name: ‘Tom’, age: 20 } console.log(‘name’ in student) // true console.log(‘gender’ i…

    node js 2023年6月8日
    00
  • 带你认识HTML5中的WebSocket

    认识HTML5中的WebSocket WebSocket是一种在单个TCP连接上实现双向通信的协议。WebSocket在HTML5中引入,并已成为Web开发的重要组成部分。下面将介绍WebSocket的使用以及实现的示例。 WebSocket的使用 基本属性 WebSocket用于建立浏览器与服务器之间的双向通信。以下是WebSocket对象的基本属性: W…

    node js 2023年6月8日
    00
  • 基于Koa(nodejs框架)对json文件进行增删改查的示例代码

    下面是基于Koa对JSON文件进行增删改查的完整攻略: 准备工作 首先,需要安装 Node.js 和 Koa,以及用于 JSON 数据操作的 fs 模块。可以在命令行中执行以下命令安装: npm install koa npm install fs 创建数据源文件 接下来,需要准备一个 JSON 格式的数据源文件,用于存储增删改查操作的数据。可以在项目根目录…

    node js 2023年6月8日
    00
  • 一文带你了解前端包管理工具npm、yarn和pnpm

    一文带你了解前端包管理工具npm、yarn和pnpm 前言 前端包管理工具是前端开发中必不可少的工具之一,它可以帮助我们快速便捷地安装、升级、管理前端项目中的各种依赖包。本文主要介绍三种最常用的前端包管理工具npm、yarn和pnpm。 npm npm全称为Node Package Manager,是由Node.js官方提供的包管理工具。npm的特点为: 可…

    node js 2023年6月8日
    00
  • Vue项目部署到jenkins的实现

    下面是“Vue项目部署到jenkins的实现”的完整攻略。这里主要包括以下主要步骤: 安装Jenkins 配置Jenkins 编写Jenkinsfile 将Jenkinsfile上传到项目代码仓库 创建Jenkins任务并运行 具体操作步骤如下: 1. 安装Jenkins 如果您还没有安装Jenkins,请参阅其官方文档以获取有关如何安装Jenkins的详细…

    node js 2023年6月8日
    00
  • 详解node.js中的npm和webpack配置方法

    为了讲解“详解node.js中的npm和webpack配置方法”的完整攻略,我将分成以下几个部分: node.js中的npm webpack配置方法 示例说明 1. node.js中的npm npm是Node.js的软件包管理器,具有依赖解决方案,版本控制和包发布的功能。npm可以用来安装、发布和管理Node.js模块。它也是开发前端项目的必备工具。 以下是…

    node js 2023年6月8日
    00
  • NodeJS搭建HTTP服务器的实现步骤

    下面是详细的NodeJS搭建HTTP服务器的实现步骤攻略。 确定需求 在开始编写任何代码之前,我们需要先确定需要实现的HTTP服务器的基本需求。基本的需求可能包括: 能够处理HTTP GET请求 能够处理HTTP POST请求 能够处理HTTP头文件 支持静态文件服务 支持路由功能 实现这些需求的方法是编写一个基本的HTTP服务器,这个服务器能够监听请求,解…

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