1

私は「localhost/test / http://myimage.com/」というURLを持っています(myimage.comは別のサイトでホストされており、APIを介してアクセスしているため、myimage.comを渡します)私の質問はどうすればよいですかURLの画像部分をエンコードしますか?'。'でgsubを実行することを考えました。そして「/」そしてそれらを元に戻すが、もっと簡単な方法があるかどうか疑問に思っている。ご協力いただきありがとうございます。

4

2 に答える 2

4

あなたは使用することができURI::encode_www_form_component(str)ますURI::decode_www_form_component

チェック:http ://www.ruby-doc.org/stdlib-1.9.3/libdoc/uri/rdoc/URI.html

于 2012-08-15T02:15:17.377 に答える
1

uriライブラリを使用して、URLをエスケープおよびエスケープ解除できます

require 'uri'
escaped = URI.escape(data, Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))

そして、あなたはデータを取り戻すことができます

original = URI.unescape(escaped)
于 2012-08-15T02:33:01.120 に答える