先引入java-property-utils-1.9.jar和cors-filter-1.7.jar两个架包
在java项目中新增一个filter
package com.doctor.service;
import org.springframework.web.filter.OncePerRequestFilter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import
java.io.IOException;
/**
*
Created by ixiaozhi
*/
public class CORSFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
// CORS 的域名白名单,不支持正规,允许所有可以用 *
response.addHeader("Access-Control-Allow-Origin", "*");
// 对于非简单请求,浏览器会自动发送一个 OPTIONS 请求,利用 Header 来告知浏览器可以使用的请求方式及 Header 的类型
if (request.getHeader("Access-Control-Request-Method") != null && "OPTIONS".equals(request.getMethod())) {
response.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE");
response.addHeader("Access-Control-Allow-Headers", "Content-Type");
response.addHeader("Access-Control-Max-Age", "1");
}
filterChain.doFilter(request, response);
}
}
web.xml配置filter
<filter>
<filter-name>cors</filter-name>
<filter-class>com.doctor.service.CORSFilter(上面那个control的路径)</filter-class>
</filter>
<filter-mapping>
<filter-name>cors</filter-name>
<url-pattern>/*</url-pattern><!--需要允许CORS跨域的地址-->
</filter-mapping>
js中使用getJson访问
var url = "http://192.168.110.37:8080/tbk/WX/loginPage/SendVerifyCode_v1.do?phone=13645154745";
try{
$.getJSON(
url,
{},
function(json){
try{
alert(json.message);
}
catch(e){}
}
);
}
catch(e){
alert(e);
}
package com.doctor.service;
import org.springframework.web.filter.OncePerRequestFilter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import
/**
*
Created by ixiaozhi
*/
public class CORSFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
// CORS 的域名白名单,不支持正规,允许所有可以用 *
response.addHeader("Access-Control-Allow-Origin", "*");
// 对于非简单请求,浏览器会自动发送一个 OPTIONS 请求,利用 Header 来告知浏览器可以使用的请求方式及 Header 的类型
if (request.getHeader("Access-Control-Request-Method") != null && "OPTIONS".equals(request.getMethod())) {
response.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE");
response.addHeader("Access-Control-Allow-Headers", "Content-Type");
response.addHeader("Access-Control-Max-Age", "1");
}
filterChain.doFilter(request, response);
}
}
web.xml配置filter
<filter>
<filter-name>cors</filter-name>
<filter-class>com.doctor.service.CORSFilter(上面那个control的路径)</filter-class>
</filter>
<filter-mapping>
<filter-name>cors</filter-name>
<url-pattern>/*</url-pattern><!--需要允许CORS跨域的地址-->
</filter-mapping>
js中使用getJson访问
var url = "http://192.168.110.37:8080/tbk/WX/loginPage/SendVerifyCode_v1.do?phone=13645154745";
try{
$.getJSON(
url,
{},
function(json){
try{
alert(json.message);
}
catch(e){}
}
);
}
catch(e){
alert(e);
}