com*_*com 10 ruby escaping ruby-on-rails
关于Ruby中的URL转义有很多讨论,但遗憾的是我找不到合适的解决方案.
一般来说,URI.escape应该做的工作,但看起来它不支持所有字符,例如它不会逃避"[".
URI.parse(URI.escape("1111{3333"))
Run Code Online (Sandbox Code Playgroud)
效果很好.
URI.parse(URI.escape("1111[3333"))
Run Code Online (Sandbox Code Playgroud)
提出异常.
据我所知,根据RFC,"["不是URL中符合条件的字符,但当我将其输入浏览器时,它会接受并呈现页面,因此我需要完全相同的行为.
知道在Ruby中逃避的任何现成解决方案吗?
ran*_*ser 16
我通常使用
CGI.escape
Run Code Online (Sandbox Code Playgroud)
转义URI参数.
require 'cgi'.
CGI.escape('1111[3333')
=> "1111%5B3333"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6410 次 |
| 最近记录: |