假设我有两个 URL:
和
https://foo.com/homepage.html?ref=topnav&bar=1
有什么简单的方法(或一些简单的外部库)可以用来检查两个 URL 是否相同,不包括 http/https 和不包括任何参数?
例如,上面的两个 url 是等价的。
假设我有两个 URL:
和
https://foo.com/homepage.html?ref=topnav&bar=1
有什么简单的方法(或一些简单的外部库)可以用来检查两个 URL 是否相同,不包括 http/https 和不包括任何参数?
例如,上面的两个 url 是等价的。
您可以使用URI并比较路径:
require 'uri'
uri = URI("https://foo.com/homepage.html/ref=topnav?bar=1")
#=> #<URI::HTTP:0x00000000b14880
https://foo.com/homepage.html/ref=topnav?bar=1>
uri.path
#=> "/homepage.html"
uri.host
#=> "foo.com"
还有其他方法URI
可以以不同的方式分解 URI。因此,您可以编写一个方法来根据您想要的多种方式进行比较。