如何在服务器端设置Access-Control-Allow-Origin头?
时间: 2023-11-21 09:56:50 浏览: 94
Nginx跨域设置Access-Control-Allow-Origin无效的解决办法
在服务器端设置Access-Control-Allow-Origin头可以通过在响应头中添加Access-Control-Allow-Origin字段来实现。该字段指定了允许访问该资源的外域URI,可以设置为*,表示允许任何域名访问该资源。以下是两种常见的设置方法:
1. 在服务器端代码中设置响应头
```python
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/api')
def api():
data = {'name': 'John', 'age': 25}
response = jsonify(data)
response.headers.add('Access-Control-Allow-Origin', '*')
return response
```
2. 使用中间件设置响应头
```python
from flask import Flask, jsonify
from flask_cors import CORS
app = Flask(__name__)
CORS(app, resources=r'/*')
@app.route('/api')
def api():
data = {'name': 'John', 'age': 25}
response = jsonify(data)
return response
```
以上两种方法都可以实现在服务器端设置Access-Control-Allow-Origin头,第二种方法使用了flask_cors中间件,可以更方便地设置跨域请求的响应头。
阅读全文