Flask Cors无法运作 - python

我正在尝试在Flask应用程序中启用CORS,但无论我把来源如何,似乎总是可以从浏览器访问URL。

我不知道我做错了什么。这是我的代码

from flask import Flask, jsonify
from flask_cors import CORS

app = Flask(__name__)
CORS(app, resources={r'/*': {'origins': 'www.examplesite.com'}})

@app.route('/reports', methods=['GET', 'POST'])
def index(id=None):
    return jsonify(success=True), 200 

参考方案

您有两个问题:

根据Flask-CORS documentation,提供给资源的密钥必须是有效的Python正则表达式-使用/.*而不是/*来匹配根/下的所有内容,而不是仅包含斜杠(即/*是什么意思)。
返回的原点应为符合RFC 6454 Section 7.1中与the W3C's specification for CORS中描述的语法匹配的标准URI。 www.example.com不是完全合格的URI,因为它没有方案。使用https://www.example.comhttp://www.example.com代替。另外,您可以使用正则表达式告诉Flask-CORS仅与origins中的一项匹配。

flask:异常后停止服务器 - python

我想在发生未处理的异常时立即停止我的Flask服务器。这是一个例子:from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): 1/0 # argh, exception return 'Hello World!' i…

Flask-RESTful-返回自定义响应格式 - python

我已经按照以下Flask-RESTful文档定义了自定义响应格式。app = Flask(__name__) api = restful.Api(app) @api.representation('application/octet-stream') def binary(data, code, headers=None): resp =…

在烧瓶蓝图中重用代码 - python

我在flask中实现了REST API。现在我们将一组表公开为资源...所以我有2个新资源res1和res2在后端处理相应的表。我想了解如何最好地重用代码。我当时正在考虑使用常见的蓝图common_bp,因此我可以将其注册为app.register_blueprint(common_bp, url_prefix='/res1') app.…

WTForms Flask(wtf_flask)验证程序如何为RadioField包括“必需”属性 - python

我基本上在寻找的是WTForms的InputRequired()的RadioField等效验证器。我的意思是,当您尝试提交表单而不在具有InputRequired()验证器的StringField字段中输入任何文本时,用户会在文本字段上方看到提示,提示是"Please fill out this field"。我希望用户必须选择male或…

带后台线程的烧瓶应用程序 - python

我正在创建一个flask应用程序,对于一个请求,我需要运行一些长时间运行的作业,而无需在UI上等待。我将创建一个线程并将消息发送到UI。该线程将计算并更新数据库。但是,UI在提交后会看到一条消息。下面是我的实现,但是它正在运行线程,然后将输出发送到我不喜欢的UI。如何在后台运行此线程?@app.route('/someJob') def …