Flask Cors不起作用

时间:2016-01-13 15:38:12

标签: python python-3.x flask cors flask-cors

我试图在我的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 

1 个答案:

答案 0 :(得分:0)

您有两个问题:

  1. 提供给资源的密钥必须是有效的Python正则表达式,根据Flask-CORS documentation - 使用/.*代替/*来匹配根/下的任何内容比任何只包含斜杠的路径(/*意味着什么)。
  2. 根据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中的一个条目。