使用CORS实现JavaWeb跨域请求问题的方法
之前用jsonp解决跨域问题,现在用CORS实现跨域请求解决java跨域问题:
主要代码如下
packagecom.hy.fliter;
importjava.io.IOException;
importjavax.servlet.Filter;
importjavax.servlet.FilterChain;
importjavax.servlet.FilterConfig;
importjavax.servlet.ServletException;
importjavax.servlet.ServletRequest;
importjavax.servlet.ServletResponse;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importorg.apache.commons.httpclient.HttpStatus;
/**
*CreatedbyWangShuaion2016/7/30.
*/
publicclassCorsFilterimplementsFilter{
@Override
publicvoidinit(FilterConfigfilterConfig)throwsServletException{}
@Override
publicvoiddoFilter(ServletRequestservletRequest,ServletResponseservletResponse,FilterChainfilterChain)throwsIOException,ServletException{
HttpServletResponseresponse=(HttpServletResponse)servletResponse;
HttpServletRequestrequest=(HttpServletRequest)servletRequest;
//指定允许其他域名访问
response.setHeader("Access-Control-Allow-Origin","*");
//响应类型
response.setHeader("Access-Control-Allow-Methods","POST,GET,DELETE,OPTIONS,DELETE");
//响应头设置
response.setHeader("Access-Control-Allow-Headers","Content-Type,x-requested-with,X-Custom-Header,HaiYi-Access-Token");
if("OPTIONS".equals(request.getMethod())){
response.setStatus(HttpStatus.SC_NO_CONTENT);
}
filterChain.doFilter(servletRequest,servletResponse);
}
@Override
publicvoiddestroy(){}
}
web.xml代码如下配置
<filter> <filter-name>cors</filter-name> <filter-class>com.hy.fliter.CorsFilter</filter-class> </filter> <filter-mapping> <filter-name>cors</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
以上所述是小编给大家介绍的使用CORS实现JavaWeb跨域请求问题的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
热门推荐
1 训练狗狗基础
2 怎么训练狗狗笑
3 怎么训练狗狗卧下
4 上海狗狗训练基地
5 训练狗狗排便
6 狗狗基础训练
8 如何训练狗狗装死
9 狗狗站姿训练
10 狗狗训练用品
11 训练狗狗吧
12 狗狗要怎么训练
13 怎么训练狗狗玩球
14 训练狗狗唤回
15 狗狗训练躺下
16 狗狗训练指令
17 狗狗的训练技巧
18 狗狗不好训练