十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章主要讲解了“Java的跨域问题一站式解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java的跨域问题一站式解决”吧!
我们提供的服务有:成都网站设计、做网站、微信公众号开发、网站优化、网站认证、龙安ssl等。为近千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的龙安网站制作公司
(1)js端处理:通常是以ajax的方式,以下是处理代码
$.ajax({ type: "GET", url: 'common/goBD.do', xhrFields: {withCredentials: true }, crossDomain: true, success: function(data){ window.open("http://www.baidu.com"); } });
这里主要注意下该代码:xhrFields: {withCredentials: true },不可缺少;url是访问服务端地址,成功返回后跳转百度页面(新打开tab页,当然也可以在原有的页面上打开)。
(2)服务端处理:通过设置response头部信息的方式,以下是处理代码
@RequestMapping(value="/goBD") public void goBD(HttpServletResponse response,HttpServletRequest request) throws IOException{ String msg = ""; String result = "{\"msg\":"+msg+"}"; PrintWriter out = response.getWriter(); response.setHeader("Access-Control-Allow-Credentials", "true"); response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin")); response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); response.setHeader("Access-Control-Max-Age", "0"); response.setCharacterEncoding("utf-8"); out = response.getWriter(); out.write(result); out.flush(); out.close(); }
这里只是简单的处理了下response头部信息,并没有加入其他的,若有其他的判断如登录时可在js端带入用户名、密码进行判断处理,通过返回值在前端做出不同的处理。
感谢各位的阅读,以上就是“Java的跨域问题一站式解决”的内容了,经过本文的学习后,相信大家对Java的跨域问题一站式解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!