你怎麼給出的URL的完整路徑後得到整個路徑如下紅寶石URI - 如何URL
uri = URI("http://foo.com/posts?id=30&limit=5#time=1305298413")
我只想posts?id=30&limit=5#time=1305298413
我想uri.path和回報/職位和ui.query返回 'ID = 30 &限值爲5'
你怎麼給出的URL的完整路徑後得到整個路徑如下紅寶石URI - 如何URL
uri = URI("http://foo.com/posts?id=30&limit=5#time=1305298413")
我只想posts?id=30&limit=5#time=1305298413
我想uri.path和回報/職位和ui.query返回 'ID = 30 &限值爲5'
你可以問URI
對象的path
,query
,並fragment
這樣的:
"#{uri.path}?#{uri.query}##{uri.fragment}"
# => "/posts?id=30&limit=5#time=1305298413"
或(多一點consice,但不太明顯):
"#{uri.request_uri}##{uri.fragment}"
# => "/posts?id=30&limit=5#time=1305298413"
你正在尋找的方法是request_uri
uri.request_uri
=> "/posts?id=30&limit=5"
你可以使用你想要的任何方法如有需要,請刪除領先的/
。
編輯:爲了得到#
符號之後的部分,使用fragment
:
[uri.request_uri, uri.fragment].join("#")
=> "/posts?id=30&limit=5#time=1305298413"
File.basename("http://foo.com/posts?id=30&limit=5#time=1305298413")
# => "posts?id=30&limit=5#time=1305298413"
謝謝。但是,這是缺少#時間= 1305298413 – user2974739