使用 javascript 从 URL 获取路径和查询字符串

Posted

技术标签:

【中文标题】使用 javascript 从 URL 获取路径和查询字符串【英文标题】:Get path and query string from URL using javascript 【发布时间】:2013-04-28 21:24:02 【问题描述】:

我有这个:

http://127.0.0.1:8000/found-locations/?state=--&km=km

我想要这个:

found-locations/?state=--&km=km

我如何在 javascript 中做到这一点?

我试过window.location.href,但它给了我整个网址 我试过window.location.pathname.substr(1),但它给了我found-locations/

【问题讨论】:

看到这个问题:***.com/questions/441755/… 【参考方案1】:

使用location.pathnamelocation.search

(location.pathname+location.search).substr(1)

【讨论】:

浏览器对此支持什么,我发现:developer.mozilla.org/en-US/docs/Web/API/… .substr(1) 是干什么用的? @AmitTripathi .substr(1) 是去掉开头的斜线【参考方案2】:
window.location.pathname + window.location.search

将为您提供基本 url /found-locations 加上查询字符串 ?state=--&km=km

【讨论】:

【参考方案3】:

如果您的 url 是一个字符串,您可以创建 URL 对象并使用 pathnamesearch 属性。

 let strurl = 'http://www.test.com/param1/param2?test=abc';
 let url = new URL(strurl)
 let pathandQuery = url.pathname + url.search;

let strurl = 'http://www.test.com/param1/param2?test=abc';
let url = new URL(strurl)
let pathandQuery = url.pathname + url.search;

console.log(pathandQuery);

【讨论】:

Not supported by IE【参考方案4】:

获取所有路径、查询甚至哈希:location.href.replace(location.origin, '')

【讨论】:

【参考方案5】:

URI.js 是一个很好的用于解析 URI 的 JavaScript 库。它可以通过流畅的语法完成您的要求。

【讨论】:

以上是关于使用 javascript 从 URL 获取路径和查询字符串的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript - 将图像从 URL 保存到本地机器特定路径?

javascript: 获取 url 路径

JavaScript获取当前Url路径

JavaScript获取当前url路径

在javascript中通过URL获取文件大小

如何使用 javascript/jquery 从 URL 中删除获取变量和文件名?