- Node.js教程
- Node.js - 教程
- Node.js - 简介
- Node.js - 环境设置
- Node.js - 首次申请
- Node.js - REPL 终端
- Node.js - 命令行选项
- Node.js - 包管理器 (NPM)
- Node.js - 回调概念
- Node.js - 上传文件
- Node.js - 发送电子邮件
- Node.js - 活动
- Node.js - 事件循环
- Node.js - 事件发射器
- Node.js - 调试器
- Node.js - 全局对象
- Node.js - 控制台
- Node.js - 流程
- Node.js - 扩展应用程序
- Node.js - 包装
- Node.js - Express 框架
- Node.js - RESTful API
- Node.js - 缓冲器
- Node.js - Streams
- Node.js - 文件系统
- Node.js MySQL
- Node.js - MySQL 快速入门
- Node.js - MySQL创建数据库
- Node.js - MySQL创建表
- Node.js - MySQL Insert Into
- Node.js - MySQL Select From
- Node.js - MySQL Where 子句
- Node.js - MySQL Order By
- Node.js - MySQL Delete
- Node.js - MySQL Update
- Node.js - MySQL Join
- Node.js MongoDB
- Node.js - MongoDB 快速入门
- Node.js - MongoDB 创建数据库
- Node.js - MongoDB 创建集合
- Node.js - MongoDB Insert
- Node.js - MongoDB Find
- Node.js - MongoDB 查询
- Node.js - MongoDB 排序
- Node.js - MongoDB Delete
- Node.js - MongoDB Update
- Node.js - MongoDB Limit
- Node.js - MongoDB Join
- Node.js模块
- Node.js - 模块
- Node.js - 内置模块
- Node.js - utility 模块
- Node.js - Web 模块
NodeJS - URL 模块
NodeJS URL 模块为我们提供了用于解析和解析 URL 的实用程序。URL 字符串是包含多个段的结构化字符串。以下是具有多个段的示例 URL。
URL =“http://user:pass@site.com:80/pa/th?q=val#hash”。
- “http:”:指定协议段。
- “user”:指定用户名段。
- “pass”:指定密码段。
- “site.com:80”:指定主机段。
- “site.com”:指定主机名部分。
- “80”:指定端口部分。
- '/pa/th?q=val' :指定路径名段。
- '/pa/th' :指定路径部分。
- '?q=val' :指定搜索部分。
- “#bar”:指定哈希段。
包括 URL 模块
要包含 URL 模块,请在 Node.js 文档的开头添加下面给出的语法。
语法
const url = require('url');
URL 模块在全局对象上可用,因此我们可以在不访问或导入它的情况下使用它。
现在,让我们看看使用 NodeJS URL 模块中的方法进行的一些操作。
打印序列化的 URL
要打印给定的序列化 URL,我们需要使用 NodeJS url.href 属性。
例
console.log("The given URL -");
const myURL = new URL('https://www.qikepu.com/index.htm');
console.log(myURL.href);
输出
在执行给定程序时,输出显示如下
The given URL - https://www.qikepu.com/index.htm
从 URL 打印主机名
为了从 URL 打印主机名段,我们使用 NodeJS url.hostname 属性。
例
const myURL = new URL('https://www.qikepu.com:100/index.htm');
console.log("The URL: " + myURL.href);
console.log("Hostname of the URL: " + myURL.hostname);
输出
让我们编译并运行该程序,以产生以下结果
The URL: https://www.qikepu.com:100/index.htm
Hostname of the URL: www.qikepu.com
Hostname of the URL: www.qikepu.com
从 URL 打印路径名
要从 URL 打印路径名段,我们使用 NodeJS url.pathname 属性。
例
const myURL = new URL("https://www.qikepu.com/prime-pack/cloud-computing/index.asp");
console.log("The URL: " + myURL.href);
console.log("Pathname of the URL: " + myURL.pathname);
输出
在执行给定程序时,输出显示如下
The URL: https://www.qikepu.com/prime-pack/cloud-computing/index.asp
Pathname of the URL: /prime-pack/cloud-computing/index.asp
Pathname of the URL: /prime-pack/cloud-computing/index.asp
URL 类
NodeJS URLSearchParams 类为我们提供了实用方法。使用这些方法,我们可以读取和写入 URL 的查询段。
属性列表
以下是 URL 类中可用的属性列表
方法 | 描述 |
---|---|
hash | 用于获取和设置 URL 的片段部分。 |
host | 用于获取和设置 URL 的主机部分。 |
hostname | 用于获取和设置指定 URL 的主机名部分。 |
href | 用于获取和设置序列化的 URL。 |
origin | 用于获取 URL 源的只读序列化。 |
password | 用于获取和设置给定 URL 的密码部分。 |
pathname | 用于获取和设置给定 URL 的路径名部分。 |
port | 用于设置和获取所提供 URL 的端口部分。 |
protocol | 用于获取和设置指定 URL 的协议部分。 |
search | 用于获取和设置 URL 的序列化查询部分。 |
username | 用于获取和设置所提供 URL 的用户名。 |
方法列表
以下是 URL 类中可用的方法列表
方法 | 描述 |
---|---|
toString() | 用于从 URL 对象中检索序列化的 URL。 |
toJSON() | 用于从 URL 对象中检索序列化的 URL。 |
domainToASCII() | 用于返回 Punycode,该代码将域转换并表示为 ASCII 字符。 |
domainToUnicode | 用于返回域中存在的 ASCII 值的 Unicode。 |
fileURLToPath | 用于接受文件 URL 字符串或 URL 对象,并将它们转换为正确编码的路径。 |
format() | 用于返回 URL 字符串的可自定义序列化,该字符串是 WHATWG URL 对象的表示形式 |
pathToFileURL() | 用于接受文件的路径并将它们转换为完全解析的文件 URL 对象 |
urlToHTTPOptions() | 用于将 URL 对象转换为包含 URL 中每个段数据的普通选项对象。 |
format(urlObject) | 用于返回派生自 urlObject 的格式化 URL 字符串。 |
parse() | 用于接受 URL 字符串,对其进行解析,最后返回一个对象,其中包含提供的 URL 字符串中存在的段。 |
URLSearchParams 类
NodeJS URL 类为我们提供了用于 URL 解析和解析的方法和属性。使用这些,我们可以获取和设置 URL 中存在的段。此类在全局对象上可用。
方法列表
以下是 URLSearchParams 类中可用的方法列表
方法 | 描述 | |
---|---|---|
new URLSearchParams (string) | 用于创建具有 JSON 对象的查询字符串对象。 | |
new URLSearchParams(obj) | 用于将输入字符串解析为查询字符串,并使用它来创建新的查询字符串对象。 | |
append() | 用于在查询字符串中将指定的名称/值对追加为新的搜索参数。 | |
delete() |
用于删除值为 name 的所有名称/值对。 |
|
entries() | 用于返回一个 ES6 迭代器,该迭代器允许对查询字符串中存在的所有名称/值对进行迭代。 | |
forEach() | 用于循环访问查询中的所有名称/值对并调用给定的函数。 | |
get() | 用于从查询字符串中的指定名称中检索值。 | |
getAll() | 用于获取查询字符串中指定名称的所有值。 | |
has() | 如果传递给此方法的名称存在,它将打印 true,否则它将打印 false。 | |
keys() | 用于在每个名称-值对的名称上返回一个 ES6 迭代器。 | |
set() | 用于将名称/值对设置为查询字符串。 | |
sort() | 用于对查询字符串中名称/值对的所有名称进行排序。 | |
toString() | 用于检索包含查询段的搜索参数的序列化字符串。 | |
values() | 用于返回一个 ES6 迭代器,该迭代器允许迭代每个名称/值对的所有值 | |
[Symbol.iterator]() | 用于返回一个 ES6 迭代器,该迭代器允许对查询字符串中存在的所有名称/值对进行迭代。 |
属性列表
以下是 urlObject 中可用的属性列表
方法 | 描述 |
---|---|
auth | 用于指定 URL 的身份验证段 |
hash | 用于指定 URL 中的片段段。 |
host | 用于指定 URL 的完整小写主机段。 |
hostname | 用于指定 URL 的主机段的小写主机名部分。 |
href | 用于指定使用协议段和主机段分析的完整小写 URL 字符串。 |
path | 用于指定路径段以及搜索部分(如果存在)。 |
pathname | 用于指定 URL 的路径段中的路径名部分 |
port | 用于指定 URL 中主机段的数字端口部分。 |
protocol | 用于指定URL的小写协议方案。 |
query | 用于指定 URL 中的查询字符串部分。 |
search | 用于指定 URL 的完整查询字符串段。 |
slashes | 它根据 URL 的协议段中的冒号 (:) 之后需要的两个 ASCII 正斜杠 (//) 返回一个布尔值。 |