1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Cors如何实现java后端完全跨域的示例代码分享

Cors如何实现java后端完全跨域的示例代码分享

时间:2018-09-21 18:34:01

相关推荐

Cors如何实现java后端完全跨域的示例代码分享

Java|java教程

Cors,java,完全跨域

Java-java教程

本篇文章主要介绍了Cors实现java后端完全跨域实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

易语言文本编码转换工具源码,vscode断点设置,ubuntu start,wars和tomcat,爬虫数据存到sqlite,rtx oa插件,前端框架vue效果图,爬虫电子书侵权,php获取来源,广西seo推广咨询,摄影师网站html5,网页等待图片,引导页模板lzw

/article/114838.htm这篇文章很详细的介绍了JS的跨域,给出的解决方案是springboot的方式,假如不用spring boot 或者 spring版本低于4.2就需要自己实现;

虚拟社交网站源码,vscode 标签对应提示,ubuntu系统 dev,tomcat6.0入门,爬虫版英文,php login后台,外贸自建站seo是什么,wap网站源码asp留言本,网页游戏模板源码下载lzw

参考了spring boot的实现方式,并有所简化,代码如下:

营销网站源码下载,怎么配置网络ubuntu,爬虫爬爱起查,discuz php,seo秃废lzw

package com.lvluo.web.filter.CorsFilter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.http.HttpHeaders;public class CorsFilter implements Filter { public static final String ACCESS_CONTROL_REQUEST_METHOD = "Access-Control-Request-Method"; public static final String OPTIONS = "OPTIONS"; public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest httpRequest = (HttpServletRequest) request; HttpServletResponse httpResponse = (HttpServletResponse) response; if (isCorsRequest(httpRequest)) { httpResponse.setHeader("Access-Control-Allow-Origin", "*"); httpResponse.setHeader("Access-Control-Allow-Methods", "POST, GET, PUT, DELETE"); httpResponse.setHeader("Access-Control-Allow-Credentials", "true"); // response.setIntHeader("Access-Control-Max-Age", 1728000); httpResponse .setHeader( "Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Accept-Encoding, Authorization"); if (isPreFlightRequest(httpRequest)) { return; } } chain.doFilter(request, response); } public void init(FilterConfig filterConfig) { } public void destroy() { } public boolean isCorsRequest(HttpServletRequest request) { return (request.getHeader(HttpHeaders.ORIGIN) != null); } /** * Returns {@code true} if the request is a valid CORS pre-flight one. */ public boolean isPreFlightRequest(HttpServletRequest request) { return (isCorsRequest(request) && OPTIONS.equals(request.getMethod()) && request .getHeader(ACCESS_CONTROL_REQUEST_METHOD) != null); }}

接着在web.xml配置filter即可

corsFilter com.lvluo.web.filter.CorsFilter corsFilter /api/*

前端测试的JS代码,其中客户端的

$.ajax({ headers : { Authorization :Bearer iBoxSO9QdrHR0 }, url: http://localhost:8080/service/api/ping, type: GET, dataType: json, success : function(result){ $("#result").html(result.code); } })

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。