有没有办法在构造URI时故意忽略RFC-2396

时间:2011-05-09 09:24:44

标签: java uri

我正在尝试使用非法字符构造java.net.URI,因为服务器是一块旧硬件,无法解码RFC-2396 complients URI。这个服务器需要一个带有这样的

的http的http-get
http://192.168.5.10/cgi-bin/Read.exe?+0+ABC/info.xml+<g>Template</g> 

?+0+ABC/info.xml+<g>Template</g>是URI的非法部分,我将获得java.net.MalformedURLException异常。

将URI的这部分解码为%2B0%2BABC%2Finfo.xml%2B%3Cg%3ETemplate%3C%2Fg%3E让我觉得服务器异常。

我想知道是否有办法在线上获得非RFC-2396 complient java.net.URIs?

1 个答案:

答案 0 :(得分:1)

执行此操作的唯一方法是根本不使用URLConnection,只需手动编写HTTP请求。

如果您确定要连接的硬件,那么您非常确定要预期的标头,这应该不会那么困难; HTTP是一种相对简单的协议。

我曾经这样做过一次:)