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

yizhihongxing

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日

相关文章

  • JavaScript ES6 Module模块详解

    JavaScript ES6 Module模块详解 JavaScript ES6 Module 是一种用于模块化 JavaScript 代码的标准,它提供了一种新的方式来组织和管理代码,使代码更加可维护、可复用,并解决了在之前无模块化时期存在的一些问题。在这篇文章中,我们将深入探讨 ES6 Module,包括它的基本语法、使用方法以及一些实例。 基本语法 E…

    node js 2023年6月8日
    00
  • Node.js API详解之 V8模块用法实例分析

    当谈到Node.js的API时,V8模块是一个重要的组件。V8模块提供了操作 JavaScript 代码的能力,并且是Node.js运行时的核心。 下面将会详细讲解V8模块的用法,包括如何使用V8模块来编写高效的代码和如何调试V8代码。 V8模块的基本用法 Node.js中通过V8模块来访问JavaScript引擎V8中的API。V8模块是Node.js中最…

    node js 2023年6月8日
    00
  • 详解Node.js一行命令上传本地文件到服务器

    详解Node.js一行命令上传本地文件到服务器的完整攻略如下: 前言 Node.js是一种基于Chrome V8引擎运行的JavaScript运行环境,可以直接在服务器端运行JavaScript代码。Node.js具有非阻塞IO和高并发等优势,因此可以用来处理网络应用程序中的大量并发请求。在此基础上,我们可以轻松地使用Node.js来实现文件上传功能。 依赖…

    node js 2023年6月8日
    00
  • 使用 NodeJS+Express 开发服务端的简单介绍

    下面就是使用 NodeJS+Express 开发服务端的简单攻略。 简介 NodeJS 是一种运行在服务器端的 JavaScript 运行环境,它允许开发者使用 JavaScript 编写后端服务。而 Express 是 NodeJS 应用最广泛的web应用程序框架之一,它提供了一些简洁的方法来处理 http 请求、路由等任务。使用 NodeJS+Expre…

    node js 2023年6月8日
    00
  • nodejs的require模块(文件模块/核心模块)及路径介绍

    当我们在 Node.js 中编写代码时,我们通常需要使用一些外部的模块或者 Node.js 自带的一些模块。在 Node.js 中,我们可以通过使用 require 方法来引入所需要的模块,这个方法接受一个参数,表示要引入的模块的名称或路径。 文件模块 文件模块是我们写的一些自定义的模块,这些模块的代码通常包含在一个 JavaScript 文件中。我们可以通…

    node js 2023年6月8日
    00
  • electron原理,以及electron生成可执行文件的方法实例分析 原创

    Electron原理及生成可执行文件方法 Electron原理 Electron是一个基于Chromium和Node.js运行的开源框架,可以用于快速开发跨平台的桌面应用程序。它的工作原理如下: 程序开启时,Electron启动一个本地的Chromium实例。 Chromium实例加载程序的HTML、CSS和JavaScript,并运行它们。 Electro…

    node js 2023年6月8日
    00
  • Nodejs 和Session 原理及实战技巧小结

    针对“Nodejs 和Session 原理及实战技巧小结”的完整攻略,我将从以下几个方面进行详细讲解: 什么是Node.js和Session Node.js与Session的原理 Session的使用技巧以及相关注意事项 Node.js中Session的实现案例 一、什么是Node.js和Session Node.js是一种服务器端运行环境,让JavaScr…

    node js 2023年6月8日
    00
  • 基于html5和nodejs相结合实现websocket即使通讯

    HTML5和Node.js简介 HTML5是用于Web设计的新一代标准,支持本地存储、多媒体、拖放和各种新元素的引入。 Node.js是一个基于V8引擎的开源、跨平台的javascript运行环境,可以帮助我们使用javascript编写服务器端代码。 WebSocket的优势和使用场景 WebSocket是HTML5标准中的一个协议,它可以在浏览器和服务器…

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