1

2 つの URL があるとします。

http://foo.com/homepage.html

https://foo.com/homepage.html?ref=topnav&bar=1

2 つの URL が http/https を除外して引数を除外して同じであるかどうかを確認するために使用できる簡単な方法 (または簡単な外部ライブラリ) はありますか?

たとえば、上記の 2 つの URL は同等です。

4

1 に答える 1

3

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"

URIURI をさまざまな方法で分解する方法は他にもあります。したがって、必要な数の方法に基づいて比較するメソッドを作成できます。

于 2013-11-04T21:41:48.653 に答える