RubyではURLエスケープについて多くの議論がありますが、残念ながら適切な解決策が見つかりませんでした。rubyでエスケープするURL
一般に、URI.escape
はジョブを実行する必要がありますが、すべての文字をサポートしていないように見えます。たとえば、「[」をエスケープしません。
URI.parse(URI.escape("1111{3333"))
がうまくいきます。
URI.parse(URI.escape("1111[3333"))
は例外を発生させます。
"["はRFCによるとURLの適格な文字ではありませんが、ブラウザに入力するとそれを受け取り、ページをレンダリングするので、まったく同じ動作が必要です。
Rubyでエスケープするための準備ができているソリューションはありますか?
ありがとう、私は必要なすべてを行うように見える – com
奇妙なことは、CGI.escape( '1111 3333')= "1111 + 3333"、 "1111%203333"実際のリンクは "+" – com