我正在使用 Flask 和 React 开发一个 Web 应用程序,尽管使用 Flask-CORS 并且所有默认值都未更改(允许所有标头和来源)从 React 发出的请求被拒绝Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost:5000/auth/check_passport. (Reason: CORS request did not succeed).
烧瓶:
from flask_cors import CORS
def create_app(script_info=None):
app = Flask(__name__)
app.config.from_object(current_config)
from project.api.auth import auth_blueprint
app.register_blueprint(auth_blueprint)
CORS(app)
return app
在终端中,我可以看到它可以进入 Flask:127.0.0.1 - - [20/Apr/2021 10:36:59] "POST /auth/check_passport HTTP/1.1" 200
根据将 CORS 保留为默认值的文档,任何客户端都可以到达端点。
非常感谢任何反馈。
编辑:
验证码:
from flask import Blueprint, request
auth_blueprint = Blueprint('auth', __name__, url_prefix='/auth')
@auth_blueprint.route('/check_passport', methods=['POST'])
def check_passport():
print('called') # isn't being printed out
image_received = request.data['image']
...
...
前端:
const checkPassport = () => {
if (passportFile) {
const fd = new FormData();
fd.append("image", passportFile, passportFile.name);
const url = "http://localhost:5000/auth/check_passport";
const config = {
headers: {
"Content-Type": "multipart/form-data"
}
};
axios
.post(url, fd, config)
.then(resp => {
console.log(resp.data.message);
console.log(resp.data.content);
})
.catch(e => {
console.log(e);
});
}
};