作者:禅与计算机程序设计艺术
1.简介
跨域(Cross-origin resource sharing)是由一个资源从一个域名访问另一个不同的域名而发生的一种行为。由于同源策略的限制,默认情况下浏览器禁止从不同域向当前域发送HTTP请求。跨域请求会受到各个浏览器厂商自己的处理方式不同,但浏览器为了保护用户信息不被盗用或篡改,一般都会阻止跨域请求,所以开发者需要在实际项目中做一些额外的设置来允许跨域请求。以下就详细介绍一下Spring MVC对跨域请求的支持及其配置方法。
2.相关术语和概念
以下对相关术语和概念进行简单介绍。
1.同源策略(same-origin policy):这个政策是浏览器的安全机制,它规定了两个页面只能具有相同的协议、主机名和端口号,否则就产生跨域请求。
2.Cookie:这是浏览器用于存储数据的一种机制,它可以在多个请求间共享,跨域请求时浏览器会自动携带请求头中的Cookie值。
3.CORS:全称是"跨源资源共享"(Cross-Origin Resource Sharing),它是一个W3C标准,定义了如何让服务器允许跨域请求。它通过设置Access-Control-Allow-Origin响应头控制跨域请求。
4.JSONP:JSON with Padding,它是一种非正式的跨域请求实现方案