改行とキャリッジリターンがあるURL文字列があります。例えば
http://xyz.com/hello?name=john&msg=hello\nJohn\n\rgoodmorning¬e=last\night I went to \roger
私の実際のmsg
文字列は次のとおりです。
hello
john
goodmorning
note
文字列は
last\night I went to \roger
正しく送信するには、これをurlencodeする必要があります
http://xyz.com/hello?name%3Djohn%26msg%3Dhello%5CnJohn%5Cn%5Crgoodmorning%26note%3Dlast%5Cnight%20I%20went%20to%20%5Croger
しかし、このエンコードは\nと\rを台無しにします。\ nは%0Aに変換され、\ rは%0Dに変換されるはずですが
私が書いているコードはルビーです。そして、私は助けを借りようとしましAddressable::URI
たが、まだ助けはありません。他の方法は、\ nと\rをそれぞれ手動で%0Aと%0Dに置き換えることです。しかし、その置換は、私が望まないようlast\night
な有効な文字を置き換えることができます。last%0Aight
誰かがより良い解決策を提案できますか?ありがとう。