servlet跨域跳转问题
现在有一个servlet A用redirect方式跳向另外一个servlet B,两个servlet不在同一个域,然后,B用forward跳转所在应用的jsp页面,这样这张页面地址栏里就有B所在域的地址,现在为了安全起见,有没有办法把地址隐藏掉,或者在A跳向B的时候不用redirect方式,因为用redirect的话地址也会跟着变~不知道我有没把问题说清,初出茅庐啊,各位大神说有没可能实现? --------------------编程问答-------------------- 可不可以考虑后台~~~URL访问呢!!!不考虑跨域的问题! --------------------编程问答-------------------- 跳转的模式下,是不可能做到的。
sendRedirect 是浏览器端跳转,必然浏览器知道目标地址。
dispatcher.forward 是服务器端跳转,但必须得在同一个域中。
唯一可实现类似效果的是:反向代理,也即servletA代替浏览器请求servletB,然后读取结果,并将结果返回给浏览器端。 --------------------编程问答-------------------- --------------------编程问答-------------------- 学习了。 --------------------编程问答--------------------
+1 这个是不是相当于跨域forward,实现起来可能有点小复杂,不知道为何它原生没有支持 --------------------编程问答--------------------
代理往往都是有专用代理服务器,纳入J2EE原生能力不太合适,不过有开源包来做倒是真的。
另外也可以在独立的应用 A 和 B 之前增加Apache反向代理来对浏览器隐藏其域的差异性。 --------------------编程问答-------------------- 用iframe试试呢。 --------------------编程问答--------------------
servlet如果直接提供一个方法,比如forwardToAnotherDomain(URL); 这个和代理没关系了吧 --------------------编程问答--------------------
不能实现楼主要的核心效果啊:
浏览器不知道你做了forward,地址栏仍然是之前的地址。 --------------------编程问答-------------------- forward 不可以跨域访问 --------------------编程问答--------------------
楼主貌似要的就是之前的地址(隐藏ServletB的真实地址) --------------------编程问答-------------------- 不能直接在js里实现么? --------------------编程问答--------------------
求解答 什么叫跨域 还有反向代理 求科普
--------------------编程问答--------------------
在IE上面,JS 跨越访问也要IE设置才行,默认不允许。 --------------------编程问答-------------------- 有个简单的办法,你在本地写一个Servlet 然后 实现 Http请求(HttpClient)将请求应答的结果 在本地生成一个jsp 然后Servlet 返回JSP ok实现 了 --------------------编程问答-------------------- 请问你是怎么用eclipse运行servlet
为什么我都运行不了
补充:Java , Web 开发