flask后端跨域
时间: 2023-06-30 22:23:17 浏览: 138
当前端页面通过 AJAX 请求 Flask 后端时,如果前端页面和 Flask 后端不在同一个域名下,则会出现跨域问题。为了解决这个问题,可以在 Flask 中使用 Flask-Cors 模块。
首先,安装 Flask-Cors 模块:
```
pip install flask-cors
```
然后在 Flask 应用中引入 Flask-Cors 模块,并设置跨域配置。例如,如果允许所有来源跨域访问,可以这样设置:
```python
from flask import Flask
from flask_cors import CORS
app = Flask(__name__)
CORS(app, resources=r'/*')
```
在上面的代码中,我们引入了 Flask-Cors 模块,并将 `app` 对象传入 `CORS` 构造函数中。其中 `resources` 参数表示对所有路由都开启跨域支持。
如果你希望只对特定的路由开启跨域支持,可以这样设置:
```python
from flask import Flask
from flask_cors import CORS
app = Flask(__name__)
cors = CORS(app, resources={r"/api/*": {"origins": "*"}})
@app.route('/api/data', methods=['GET'])
def get_data():
# your code here
```
在上面的代码中,我们只对 `/api/*` 路由开启跨域支持,允许所有来源跨域访问。
需要注意的是,开启跨域支持会增加安全风险。因此,应该根据具体情况进行设置,只允许必要的来源跨域访问。
阅读全文