2019-03-05   ruby   web   escape   encode   cgi   uri 

CGI.escapeHTMLとCGI.escapeとURI.encodeを比べる

結論

CGI.escapeHTML('< > &') #=> &lt; &gt; &amp;
CGI.escape('< > &')     #=> %3C+%3E+%26
URI.encode('< > &')     #=> %3C%20%3E%20&

CGI.escapeHTML('https://example.com/')  #=> https://example.com/
CGI.escape('https://example.com/')      #=> https%3A%2F%2Fexample.com%2F
URI.encode('https://example.com/')      #=> https://example.com/

CGI.escapeHTML('結')   #=> 結
CGI.escape('結')       #=> %E7%B5%90
URI.encode('結')       #=> %E7%B5%90

コード

参照

https://gist.github.com/hyuki/bbb72982e4257f86c48b85d7278f342c

 2019-03-05   ruby   web   escape   encode   cgi   uri