跨域是指
例如:当前页面的地址:http://localhost:8080/ ,点击按钮请求url为:http://localhost:5000/student时,此场景为跨越访问。
浏览器的同源策略限制,跨域请求默认是被禁止的(浏览器禁止处理此请求的返回结果)。
详细说明
在使用Flask提供web接口服务时,前端页面经常会遇到跨域请求的问题。
跨域请求是指:在浏览器发起的请求,其目标接口地址(Flask提供的http服务):http://localhost:5000/student
与当前页面的地址:http://localhost:8080/ 不在同一个域下由于浏览器的同源策略限制,跨域请求默认是被禁止的(浏览器禁止处理此请求的返回)。
然而,在某些情况下,我们可能需要允许跨域请求,例如通过 JavaScript 发起的 AJAX 请求或在前端应用程序中调用后端 API。
补充:
1、什么是跨域问题
跨域是因为出于浏览器的同源策略限制。同源策略(Sameoriginpolicy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。同源策略会阻止一个域的javascript脚本和另外一个域的内容进行交互。
所谓同源(即指在同一个域)就是两个页面具有相同的协议(protocol),主机(host)和端口号(port)。
跨域问题就是当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同时出现的问题。