【网络安全】跨域请求相关知识

浏览器因安全原因限制了脚本内的跨源HTTP请求,这称为同源策略。解决跨域问题通常涉及在服务器端设置CORS响应头,如`Access-Control-Allow-Origin`,允许特定或所有来源的请求。此外,配置nginx服务器也可以实现跨域访问。
摘要由CSDN通过智能技术生成

这里写自定义目录标题

跨域请求原理

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

跨域是什么

出于安全原因,浏览器限制从脚本内发起的跨源HTTP请求。 例如,XMLHttpRequest和Fetch API遵循同源策略。 这意味着使用这些API的Web应用程序只能从加载应用程序的同一个域请求HTTP资源,除非响应报文包含了正确CORS响应头。
说人话:
只要出现下面的任一情况,就算不同源(即跨域)

协议不同(例如:http和https)
端口不同
域名不同(例如:a.baidu.com和b.baidu.com)

解决方案

在api返回REQUEST后加一个request后的处理请求

## 生成一个适合你的列表
#打开'Access-Control-Allow-Origin',允许跨域访问
@app.after_request
def after_request(response):
    # response.headers.add('Access-Control-Allow-Origin', '*')
    # 允许相同IP的跨域访问
    response.headers.add('Access-Control-Allow-Origin', '你的请求来自哪里就填哪里')
    # 允许本机所有跨域访问
    # Access-Control-Allow-Credentials: true
    response.headers.add('Access-Control-Allow-Credentials', 'true')
    response.headers.add('Access-Control-Allow-Headers', 'Content-Type,Authorization')
    response.headers.add('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS')
    return response

## 解决方案二
配置ngxin服务器允许CORS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值