我想在我的Flask应用程序中启用CORS,并使用一组预定义的允许起源,如here所示:
from flask import Flask
from flask_cors import CORS
app = Flask(__name__)
CORS(app, origins=['http://localhost:3000', 'https://app.my_domain.com'])
字符串
问题是,如果我没有在对服务器的请求中指定Origin
头,则Access-Control-Allow-Origin
响应头将返回任意值。
例如,如果我的web应用程序在https://app.my_domain.com
上运行,向后端发送一个GET
请求,而没有指定Origin
请求头,后端将返回以下响应头:Access-Control-Allow-Origin: http://localhost:3000
个
我觉得这似乎是不正确的,这个机制打算如何使用?
1条答案
按热度按时间zkure5ic1#
Flask-Cors似乎有一个名为
always_send
的未记录选项,默认为True
(参见GitHub代码和相关的issue)。该选项的作用是即使“Origin”头不存在,它也会返回origins。要解决这个问题,您只需将选项设置为
False
:字符串