当前位置: 首页 > article >正文

Node.js的url模块与querystring模块

新书速览|Vue.js+Node.js全栈开发实战-CSDN博客

《Vue.js+Node.js全栈开发实战(第2版)(Web前端技术丛书)》(王金柱)【摘要 书评 试读】- 京东图书 (jd.com)

4.3.1  http模块——创建HTTP服务器、客户端

要使用http模块,只需要在文件中通过require('http')引入即可。http模块是Node.js原生模块中最为亮眼的模块。传统的HTPP服务器会由Apache、Nginx、IIS之类的软件来担任,但是Node.js并不需要。Node.js的http模块本身就可以构建服务器,而且性能非常可靠。

Node.js的http模块:创建HTTP服务器、客户端示例-CSDN博客

4.3.2  url模块——url地址处理

要使用url模块,只需要在文件中通过require('url')引入即可。url模块主要用来解析URL,它提供以下3种方法:

  1. url.parse(urlStr[,parseQueryString][,slashesDenoteHost]):解析一个URL地址,返回一个url对象。
  2. url.formate(urlObj):接收一个url对象为参数,返回一个完整的URL地址。
  3. url.resolve(from, to):接收一个base url对象和一个href url对象,像浏览器那样解析,返回一个完整的URL地址。

示例代码如下:

【代码4-10】
01  const url = require('url');
02  let parseUrl = 'https://www.google.com/?q=node.js';
03  let urlObj = url.parse(parseUrl);
04  console.log(urlObj);

在命令行中输出如图4.10所示的信息,说明解析成功。

图4.10  解析URL地址

利用url.format()方法返回上述完整地址的代码如下:

【代码4-11】
01  const url = require('url');
02  let urlObj = {
03      'host': 'www.google.com',
04      'port': 80,
05      'protocol': 'https',
06      'search':'?q=node.js',
07      'query': 'q=node.js',
08      'path': '/'
09  };
10  let urlAdress = url.format(urlObj);
11  console.log(urlAdress);

运行代码后,可以在命令行看到完整的URL地址。

resolve的使用方法如下:

【代码4-12】
01  const url = require('url');
02  let urlAdress = url.resolve('https://www.google.cn', '/image');
03  console.log(urlAdress);

运行代码后,可以在命令行看到完整的URL地址https://www.google.cn/image。

4.3.3  querystring模块——查询字符串处理

要使用querystring模块,只需要在文件中通过require('querystring')引入即可。querystring模块是一个处理查询字符串的模块,这个模块的主要方法有:

  1. querystring.parse():将查询字符串反序列化为一个对象,类似JSON.parse()。
  2. querystring.stringify():将一个对象序列化为一个字符串,类似JSON.stringify()。

下面演示它们的使用方法。

将查询字符串反序列化为一个对象:

【代码4-13】
01  const querystring = require('querystring');
02  let str = 'keyWord=node.js&name=huruji';
03  let obj = querystring.parse(str);
04  console.log(obj);

将对象序列化为一个查询字符串。

【代码4-14】
01  const querystring = require('querystring');
02  let obj = {
03      keyWord: 'node.js',
04      name: 'huruji'
05  };
06  let str = querystring.stringify(obj);
07  console.log(str);


http://www.kler.cn/a/416463.html

相关文章:

  • Android笔记(三十四):封装带省略号图标结尾的TextView
  • 电路基础——相量法
  • 贪心算法理论
  • uniapp实现列表页面,实用美观
  • C/C++ 数据结构与算法 【时间复杂度和空间复杂度】【日常学习,考研必备】
  • HarmonyOS4+NEXT星河版入门与项目实战(23)------组件转场动画
  • 【AI日记】24.11.29 kaggle 比赛 Titanic-2 | 鼓励自己
  • AI生成式安全威胁:企业数据将如何被重新定义?
  • wordpress使用Markdown语法写的文章图片显示不正常,记录一次折腾之旅
  • 【vue3实现微信小程序】设置项目底部tab页面切换标签
  • 计算机网络——不同版本的 HTTP 协议
  • Webpack 的构建流程
  • 分布式储能监控系统为储能电站高效运维与精细化管理赋能
  • Vue 3 的双向绑定原理
  • go结构体匿名“继承“方法冲突时继承优先顺序
  • doris避坑之端口冲突
  • uniapp在小程序连接webScoket实现余额支付
  • LED室内显示屏的性能优化分析和电压管理
  • 外卖商城平台的微信小程序ssm+论文源码调试讲解
  • Nvidia 推出最新 AI 音频模型,可制作前所未有的声音
  • Hive元数据表解析
  • dbeaver如何批量执行sql脚本
  • 像素流送api ue多人访问需要什么显卡服务器
  • 【Python】Selenium模拟在输入框里,一个字一个字地输入文字
  • Ubuntu中的apt update 和 apt upgrade
  • 基于@ohos/axios深入学习HarmonyOS Next的网络数据请求