#!/usr/bin/env python # -*- coding:utf8 -*- import flask import os import sys from flask import request, jsonify, Response from flask_cors import CORS interface_path = os.path.dirname(__file__) sys.path.insert(0, interface_path) class JSONResponse(Response): @classmethod def force_type(cls, response, environ=None): if isinstance(response, (list, dict)): response = jsonify(response) #response.headers['Access-Control-Allow-Credentials'] = 'true' #response.headers['Access-Control-Allow-Origin'] = '*' #response.headers['Access-Control-Allow-Methods'] = 'OPTIONS,POST' #response.headers['Access-Control-Allow-Headers'] = 'Content-Type, X-Requested-With' return super(Response, cls).force_type(response, environ) server = flask.Flask(__name__) CORS(server) server.response_class = JSONResponse
上面代码中,第一种使用对response的headers属性进行配置,被注释掉的,第二种就是使用如上代码,不过注意下载代码最后不要也放在这里,因为这里使用了JSON封装返回结果。
from flask_cors import CORS