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; //路径
相关推荐
&白帝&2 小时前
vue右键显示菜单
前端·javascript·vue.js
Wannaer2 小时前
从 Vue3 回望 Vue2:事件总线的前世今生
前端·javascript·vue.js
羽球知道3 小时前
在Spark搭建YARN
前端·javascript·ajax
光影少年3 小时前
vue中,created和mounted两个钩子之间调用时差值受什么影响
前端·javascript·vue.js
恋猫de小郭4 小时前
如何查看项目是否支持最新 Android 16K Page Size 一文汇总
android·开发语言·javascript·kotlin
赵大仁5 小时前
React Native 与 Expo
javascript·react native·react.js
程序员与背包客_CoderZ6 小时前
Node.js异步编程——Callback回调函数实现
前端·javascript·node.js·web
清灵xmf7 小时前
从 Set、Map 到 WeakSet、WeakMap 的进阶之旅
前端·javascript·set·map·weakset·weakmap
运维@小兵7 小时前
vue使用路由技术实现登录成功后跳转到首页
前端·javascript·vue.js
肠胃炎7 小时前
React构建组件
前端·javascript·react.js