gpt4 book ai didi

javascript - 通过删除不需要的查询参数同时保留其他参数来返回干净 URL 的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-02 02:21:17 24 4
gpt4 key购买 nike

我需要为包含不需要的查询参数的页面路由制定重定向规则。这就是默认不需要的查询参数的样子。

https://some-test-url.com/b/laptops/1117?clubId=6612&offset=0&rootDimension=pcs_availability%253AOnlinepipsymbBrand%253ADell&searchCategoryId=1117&selectedFilter=all&sortKey=relevance&sortOrder=1

它应该重定向到已清理的 URL。它应该在这些默认值条件下从 URL 中清除这些内容。对于限制,它应该删除 48 和 20。我假设应该保留下面未列出的任何其他查询参数,因为它们不是默认值。

searchCategoryId=all
selectedFilter=all
sortKey=relevance&sortOrder=1
limit=48 on desktop or limit=20 on mweb
clubId ever
offset=0

所以上面清理后的 URL 应该是这样的

https://some-test-url.com/b/laptops/1117?rootDimension=pcs_availability%253AOnlinepipsymbBrand%253ADell

但是,例如,如果它不是默认查询参数

www.test.com/blah?offset=40&selectedFilter=online&clubId=3422

它应该返回

www.test.com/blah?offset=40&selectedFilter=online

处理这个问题的最佳方法是什么?我尝试使用正则表达式执行此操作,但无法获得预期结果,因为它有点复杂。感谢您的帮助!

最佳答案

您可以使用所有主流浏览器都支持的URLSearchParams:https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams

类似于:

const params = new URLSearchParams(window.location.href);
for (var key of params.keys()){
// do something with logic from your allow/block list
// such as removing it:
params.delete(key);
}

关于javascript - 通过删除不需要的查询参数同时保留其他参数来返回干净 URL 的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66380146/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com