nodejs如何实现URL的拆分

需求: 我现在有一个url为:https://192.168.100.33:8888/images/signImage/8178_0.png 我想要把它拆分成 域名部分:'https://192.168.100.33:8888 ' 和路径部分 '/images/signImage/8178_0.png'

实现方法:

  • **方法一 :**通过url模块来实现URL的拆分,url.parse() 会解析一个URL字符串,返回一个URL对象,包含诸如protocol, hostname, port, pathname等信息。所以可以通过url.parse获取到hostname和pathname,就可以实现URL的拆分。
javascript 复制代码
const url = require('url');

const fullUrl = 'https://192.168.100.33:8888/images/signImage/8178_0.png';

const urlObj = url.parse(fullUrl);

const hostname = urlObj.protocol + '//' + urlObj.host; 
// https://192.168.100.33:8888

const pathname = urlObj.pathname;  
// /images/signImage/8178_0.png
  • **方法二:**Node.js 中也可以使用 WHATWG URL API来实现 url.origin就是域名部分,url.pathname是路径部分
javascript 复制代码
const { URL } = require('url');

const url = new URL('https://192.168.100.33:8888/images/signImage/8178_0.png');

const hostname = url.origin;  //域名
const pathname = url.pathname; //路径
相关推荐
Lee川1 小时前
探索JavaScript的秘密令牌:独一无二的`Symbol`数据类型
javascript·面试
Lee川1 小时前
深入浅出JavaScript事件机制:从捕获冒泡到事件委托
前端·javascript
光影少年1 小时前
async/await和Promise的区别?
前端·javascript·掘金·金石计划
codingWhat1 小时前
如何实现一个「万能」的通用打印组件?
前端·javascript·vue.js
前端Hardy4 小时前
别再无脑用 `JSON.parse()` 了!这个安全漏洞你可能每天都在触发
前端·javascript·vue.js
前端Hardy4 小时前
别再让 `console.log` 上线了!它正在悄悄拖垮你的生产系统
前端·javascript·vue.js
csdn飘逸飘逸5 小时前
Autojs基础-用户界面(ui)
javascript
炫饭第一名5 小时前
速通Canvas指北🦮——图形、文本与样式篇
前端·javascript·程序员
进击的尘埃5 小时前
React useEffect 的闭包陷阱与竞态条件:你以为的 cleanup 真的在正确时机执行了吗
javascript
进击的尘埃5 小时前
TypeScript 类型体操进阶:用 Template Literal Types 实现编译期路由参数校验
javascript