2012-11-14 24 views
1

the documentation for URI.parse是下面的代碼:URI.parse文檔

require 'uri' 

uri = URI.parse("http://www.ruby-lang.org/") 
p uri 
# => #<URI::HTTP:0x202281be URL:http://www.ruby-lang.org/> 

我不知道爲什麼,在這個例子中,有信p,例如p uri

此外,如何使用.parse不同於uri = URI("http://..."),如在頁面頂部的示例?

+2

'p'只是用來輸出變量'uri'的內容。它與URI庫本身沒有任何關係。 – Mischa

+0

我投票結束,但你的第二個問題是有效的。抱歉。看來'uri = URI(「http:// ...」)'和'uri = URI.parse(「http:// ...」)'也一樣。我不確定,因爲文檔不清楚。 – Mischa

回答

3

看來URI(url)URI.parse(url)做如出一轍:

u1 = URI("http://stackoverflow.com/") 
u2 = URI.parse("http://stackoverflow.com/") 
u1 == u2 # => true 
+2

'URI.parse'對於發生了什麼更加清楚。如果不具有令人討厭的含義,那麼擁有與*類*名稱完全相同的*方法*的瘋狂的簡短符號會令人困惑。 – tadman

+0

@tadman,感謝您的評論。我想知道'URI(url)'是如何工作的。我同意'URI.parse'更清晰。 – Mischa