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; //路径
相关推荐
Warren9838 分钟前
Java异常讲解
java·开发语言·前端·javascript·vue.js·ecmascript·es6
超级土豆粉1 小时前
Taro Hooks 完整分类详解
前端·javascript·react.js·taro
iphone1081 小时前
从零开始学网页开发:HTML、CSS和JavaScript的基础知识
前端·javascript·css·html·网页开发·网页
辰九九1 小时前
Vue响应式原理
前端·javascript·vue.js
中等生1 小时前
为什么现在的前端项目都要'启动'?新手必懂的开发环境变迁
前端·javascript·react.js
罗行1 小时前
手写防抖和节流
前端·javascript
颜酱1 小时前
理解并尝试vue3源码的reactivity
前端·javascript·vue.js
苏州第一深情2 小时前
【uniapp】uniapp实现单点登录、打包H5部署到线上
javascript·vue.js·uni-app
拉不动的猪2 小时前
jS篇Async await实现同步效果的原理
前端·javascript·面试
chxii2 小时前
2.4 组件通信
前端·javascript·vue.js