url module1.parse method//test02.js import http from 'http' import url from 'url' const parseUrl = url.parse('https://www.baidu.com/news?name=朱葛亮&age=18#helloworld') console.log(parseUrl) http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'}) res.write('Hello, hello world!') res.end() }).listen(3000) console.log('My server is running at http://localhost:3000') Parse the URL address and obtain a parsed URL details object, including protocol, domain name, path, port, query parameters, hash and other information. The second parameter is a boolean value, which defaults to false. If true is passed, the query will be converted to an object. const parseUrl = url.parse('https://www.baidu.com/news?name=朱葛亮&age=18#helloworld', true) console.log(parseUrl) 2. format methodPass in a URL information object (that is, the object returned by the parse method) and return a specific path. This method is the reverse application of the parse method. const formatUrl = url.format({ protocol: 'https:', slashes: true, auth: null, host: 'www.baidu.com', port: null, hostname: 'www.baidu.com', hash: '#helloworld', search: '?name=Zhuge Liang&age=18', query: 'name=Zhuge Liang&age=18', pathname: '/news', path: '/news?name=Zhuge Liang&age=18', href: 'https://www.baidu.com/news?name=朱葛亮&age=18#helloworld' }) console.log(formatUrl) // Output https://www.baidu.com/news?name=朱葛亮&age=18#helloworld 3. resolve methodSplicing or replacing secondary paths const result1 = url.resolve('https://www.baidu.com', 'news') const result2 = url.resolve('https://www.baidu.com/home', '') const result3 = url.resolve('https://www.baidu.com/home', 'about') const result4 = url.resolve('https://www.baidu.com/home/index', 'about') const result5 = url.resolve('https://www.baidu.com/home/index?name=朱葛亮', 'about/hello') console.log(result1) console.log(result2) console.log(result3) console.log(result4) console.log(result5) Output: Events module (event-driven)1. Introduce the event module 2. Create an eventEmitter instance 3. Use the on method and emit method in eventEmitter to implement event-driven, similar to $on and $emit in vue, that is, publish-subscribe mode Asynchronous requirements can be solved as follows: import fs from 'fs' import event from 'events' const eventEmitter = new event.EventEmitter() eventEmitter.on('events', data => { console.log('Received data', data.toString()) }) fs.readFile('static/index.html', (err, data) => { eventEmitter.emit('events', data) }) The path moduleimport path from 'path' // Get the suffix name const extName = path.extname('index.html') // .html SummarizeThis article ends here. I hope it can be helpful to you. I also hope that you can pay more attention to more content on 123WORDPRESS.COM! You may also be interested in:
|
<<: How to install the latest version of docker using deepin apt command
>>: Implementation process of row_number in MySQL
Table of contents Some basic configuration About ...
This article introduces RHEL8 network services an...
Table of contents Constructing payment methods us...
If your MySQL database is installed on a centos7 ...
Ubuntu 20.04 does not have root login enabled by ...
Preface Using Docker and VS Code can optimize the...
This article is used to record the installation o...
Table of contents background analyze method backg...
Implementation ideas: First of all, the alarm inf...
VMware version: VMware-workstation-full-16 VMware...
Preface The notification bar component is a relat...
1. Complex SQL queries 1.1. Single table query (1...
Table of contents 1. Process Control 2. Sequentia...
1. What is scaffolding? 1. Vue CLI Vue CLI is a c...
This article example shares the specific code of ...