1、什么是跨域??
2、如何解决跨域??
方案一、使用Ajax的jsonp来解决(只能使用get请求)
前端代码:
后台代码:
方案二、使用JQurey的jsonp插件(对于get、post请求不做要求,但是从后台发来的消息依旧是jsonp格式的数据)
插件去官网下载即可
前端代码:
后台代码:
方案三、使用cors
前端代码
后台代码:
与前两种方式相比,前端代码和未处理跨域前一样,是普通的ajax请求,但服务器代码添加了一段解决跨域的代码
// 设置:Access-Control-Allow-Origin头,处理Session问题
response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("P3P", "CP=CAO PSA OUR");
if (request.getHeader("Access-Control-Request-Method") != null && "OPTIONS".equals(request.getMethod())) {
response.addHeader("Access-Control-Allow-Methods", "POST,GET,TRACE,OPTIONS");
response.addHeader("Access-Control-Allow-Headers", "Content-Type,Origin,Accept");
response.addHeader("Access-Control-Max-Age", "120");
}
cors高级使用:在springmvc中配置拦截器。。。。。请继续补充