2个Web应用集成问题解决

发布于 2022-09-08 02:36:38 字数 4636 浏览 14 评论 0

2个Web应用集成问题解决

2台机器部署了2个Web应用,A应用需要访问B应用的URL。为了保证URL不会让任意用户随便粘贴就可以访问,需要在B应用上加上filter拦截请求,并进行权限校验。A应用的URL给用户看来是一个中间跳转页面的URL。在这个中间页面,添加hidden的value,在B应用的filter端进行value的校验。代码如下:

Html代码

  1. <%@ page language="java" contentType="text/html;   
  2. charset=UTF-8"      
  3. pageEncoding="UTF-8"%>
  4. <html>     
  5. <head>         
  6. <title></title>         
  7. <meta http-equiv="pragma" content="no-cache">         
  8. <meta http-equiv="cache-control" content="no-cache">         
  9. <meta http-equiv="content-type" content="text/html; charset=UTF-8">         
  10. <script type="text/javascript">        
  11. function init(){              
  12. document.getElementById('myForm').action="http://localhost:8080/ext2.2/Filter.jsp"             document.getElementById('myForm').submit();         
  13. }         
  14. </script>     
  15. </head>     
  16. <body onload="init()">         
  17. <form method="post" id="myForm">            
  18. <input type="hidden" name="key" id="key" value="MERKTLTTOR">         
  19. </form>     
  20. </body>
  21. </html>

复制代码Html代码

  1. <%@ page language="java" contentType="text/html;   
  2. charset=UTF-8"      
  3. pageEncoding="UTF-8"%>
  4. <html>     
  5. <head>         
  6. <title></title>         
  7. <meta http-equiv="pragma" content="no-cache">         
  8. <meta http-equiv="cache-control" content="no-cache">         
  9. <meta http-equiv="content-type" content="text/html; charset=UTF-8">         
  10. <script type="text/javascript">         
  11. function init (){              
  12. <%              
  13. String key=request.getParameter("key");              
  14. if(!"MERKTLTTOR".equals(key)){              
  15. %>                 
  16. alert('不允许访问');              
  17. <%              
  18. }              
  19. %>         
  20. }         
  21. </script>     
  22. </head> <body onload="init()">         
  23. <form method="post" id="myForm">            
  24. <input type="hidden" name="key" id="key" value="MERKTLTTOR">         
  25. </form>     
  26. </body>
  27. </html>

复制代码这是filter页面,实际中可以是真正的过滤器filter。

中间页面采用post提交,用户在url中看不到提交的hidden。

中间页面的form的action可以用request.getParamter()获取

当然value可以采用一些加密算法进行加密。

原文链接:http://liwenjie.javaeye.com/blog/919015

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文