如何检查javascript中的两个网址是否相同?
例如,我不想将这两个存储在数据库中:
或两者:
或两者:
...那么在URL中获取GET数据呢?我的数据库可能会变得非常混乱。
有没有办法可以将所有网址转换为某种标准格式,以便检查重复网页会更简单?
谢谢大家!
答案 0 :(得分:0)
Google通过使用link rel="canonical"解决了这个问题 - 此过程称为canonicalization。
当然,如您所述,您可以使用regexp简化网址,但“example.com”和“www.example.com”可能是不同的网站。
答案 1 :(得分:0)
如果您只想存储网站的基础域,我就会这样做。
var url = "http://www.xyzsite.com/mySite/?param=1"; // This is the url you want to process.
var filter = [
"http://",
"https://",
"www.",
];
// Loops through array and removes the protocol and www. prefixes if present
for (var i in filter) {
url = url.replace(filter[i], "");
}
// Returns everything before the first / in the URL
var cleanUrl = url.split("/")[0]; // cleanUrl should equal "xyzsite.com" now
我可能会将它包装在一个函数中,这样它也很容易运行多次。