在jsp中包含div内部的外部网站

Dal*_*lNM 4 jsp

我想在我的jsp页面的div中包含一个外部网站(例如www.example.com).我不想使用框架,因为它不可取.

我尝试在线搜索解决方案,但我发现的所有内容都包括内部网页(例如webpage.jsp)......

我真的很感谢你的帮助.

Bal*_*usC 7

首先,如果涉及划分/包括本地内容(这是最常见的框架滥用),使用框架确实是不可取的.但如果它涉及外部内容,那肯定是可取的.对于本地内容,您应该使用服务器端包含,例如<jsp:include>.

至于具体问题,如果外部网站的HTML响应没有与您自己的JSP页面的HTML响应发生冲突(即它没有返回一个完整的<html>文档,这会使您的最终HTML响应完全无效,因为重复/嵌套<html>元素,但它返回一些与上下文无关的HTML片段,例如<span>blah</span>),那么你可以使用JSTL <c:import>.

<c:import url="http://external.com/some/fragment.html" />
Run Code Online (Sandbox Code Playgroud)

但是如果它返回一个完整的<html>文档和/或依赖于上下文,那么你真的必须使用<iframe>或者在它们之间引入一个代理servlet.有关此类servlet的具体启动示例,请检查以下答案:使HttpURLConnection加载带有图像的网页.