如何根据需要转义 URL,而不进行双重转义?
是否有一个已经这样做的 Ruby 库?我想知道 WebKit 或 Chrome 使用什么算法。
两个例子:
此 URL 无效,因为
%
没有转义:http://x.co/op&k=21%
。如果您在 URL 栏中键入它,它就会知道将其转义。(它正在逃避幕后的'%',对吗?)如果您
http://localhost:3000/?s=hello%20world
在浏览器中键入,它就知道不会再次转义%20
。
我想重用已经处理浏览器必须处理的边缘情况的优秀代码。如有必要,我不介意调用外部库。
更新:是的,我知道URI.parse。无需向我展示语法。我的问题比这更难。