试图在java中用相对url收取外部URL的内容

时间:2012-09-14 10:59:18

标签: java http url

我需要在我的网络应用程序中加载外部网址的内容。

我用HttpsUrlConnection和HttpCliente试了一下,我忘记了,但我遇到了相对URL的问题,因为它不起作用。

如果我的网络应用为http://example1.com并且我尝试收取http://external.com的内容,则http://external.com的相对网址,例如/images/g.jpg正试图在{{ 1}}。

我很绝望,我寻找谷歌,但我一无所获。

抱歉我的英语不好。

谢谢!!! : - )

P.P:有我的代码(在代码中是helios说关于改变绝对URL的相对url,但它不起作用......)

codigoHtml具有相关链接的HTML代码,它不起作用!!

http://example1.com/images/g.jpg

1 个答案:

答案 0 :(得分:0)

您尝试做的与Apache的mod_rewrite module类似。

它基本上必须重写提供的URL。没有灵丹妙药。所以我应该建议 - 如果内容不是很复杂 - 是将内容作为字符串抓取并进行替换(或几个)。

类似的东西:

String html = ...content from URL... //beware of encoding!!! a lot of programmers neglect this!
html = html.replace(OLD_PREFIX, NEW_PREFIX);
// now you can use html

OLD_PREFIX可以是http://external.com/,NEW_PREFIX可以是http://example1.com/

您可以考虑到网址始终以双引号"开头,因此前缀可以包括从"开始的前缀。当然......可能存在错误的替代......