Open Jerakin opened 2 years ago
You need to add a "After request" function on your app definitiion, like:
app = Flask(name) @app.after_request def enable_cors(response): response.headers.add("Access-Control-Allow-Headers", "authorization,content-type") response.headers.add("Access-Control-Allow-Methods", "DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT") response.headers.add("Access-Control-Allow-Origin", "*") return response
Hi! Did you try to add this in the example I provided? I tried adding it there and it didn't do anything. I tried to add it under if __name__ == "__main__"
, tried just after it was initialized in create_app()
. Also tried to do add it directly without the decorator like so app.after_request(enable_cors)
. Nothing worked. :(
@Jerakin Hi! Have you found a solution?
Paused working on this part of the website for a while, until a few days ago and am still unable to solve it even with a fresh mindset. Adding to our plight is that this project now looks like it is no longer maintained, in the future I will have to look into migrating away from restx and would recommend others to do the same.
Summary: Trying to add CORS to my flask-restx app but failing. Is my setup correct? Can someone see if there is something wrong with my general setup or if flask-restx simply doesn't work with the kind of setup I am trying to accomplish?
I have made a issue on https://github.com/corydolphin/flask-cors (#308) too, but now I am thinking that it's probably on
flask-restx
side on things maybe.In the console that is running flask I don't get any relevant logs and the website is saying
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://127.0.0.1/api/v1/test. (Reason: CORS request did not succeed). Status code: (null).
I don't even get any indication in the logs that the server received an"OPTIONS"
request._I would greatly appreciate it if someone could just run my repro case below so that I at least know that it isn't just my machine._
Running it with
FLASK_ENV=development
and simplyflask run
.