首页 > 解决方案 > 如何仅使用 javascript 获取 URL 的一部分

问题描述

这是关于从 firebase 发送到电子邮件的密码重置链接。我想从中获取 oobCode。但是当我获得页面的 url 时,它给了我本地地址,而不是我在电子邮件中点击的实际链接。请帮助

https://example.com/usermgmt?mode=resetPassword&oobCode=ABC123&apiKey=AIzaSy...&lang=fr

此链接实际上在我的网站中加载了 reset_pwd.html。因此,当我尝试获取 window.location.href 时,它并没有给我地址栏中显示的实际地址。

这是我到目前为止所尝试的。但我意识到我正在尝试拆分网页的本地地址http://127.0.0.1:80/reset_username

function func() {
  var s = window.location.href;
  ResponseURL = window.location.href;
  var domain = ResponseURL.split('=');
  alert(s);;

}

标签: javascript

解决方案


您可以使用以下方法获取它URL.searchParams.get()

function getUrlParam(key, urlString = window.location.href) {
  let url2 = new URL(urlString);
  return url2.searchParams.get(key);
}


const url = `https://example.com/usermgmt?mode=resetPassword&oobCode=ABC123&apiKey=AIzaSy&lang=fr`;
console.log(getUrlParam('oobCode', url));

// Can be used without providing the URL, like:
// getUrlParam('oobCode');


推荐阅读