我正在开发一个HTML解析器,遇到了一个网站在URL编码方面存在问题。在主页(“http://example.com/a/b”)上,我有一些链接以“a/b”开头,但缺少初始的“/”。根据我对相对路径的理解,Ruby URI可以正确地工作:
uri = URI("http://example.com/a/b")
(uri + "a/b").to_s
==> http://example.com/a/a/b
然而,在Firefox或Chrome等浏览器中,行为似乎有所不同,因为页面被重定向到http://example.com/a/b(顺便说一句,该链接有效)。
您是否见过这种情况,并且您会建议在Ruby中拥有与Web浏览器相同的行为吗?