Gar*_*gos 7 security django django-rest-framework reactjs axios
我目前正在构建一个网络应用程序。
我的前端是使用React和Axios开发的(用于API调用请求)。它直接由 Nginx 在app.mydomain.com上提供服务
我的后端是使用 Django 和Django Rest开发的。它在api.mydomain.com上与 Nginx 和 Gunicorn 一起提供。它只为 API 端点提供服务。
所以前端和后端是分离的。
我希望只有我的前端 (app.mydomain.com)能够向我的 Django Rest 后端发出 API 请求。
我想阻止任何其他域、任何客户端(例如 postman、insomnia、curl 或任何脚本)向我的后端发出 API 请求。
我已经在 Django Rest 中设置了 CORS。但是,我仍然可以使用curl 或任何其他客户端向后端发出请求。
您知道我可以做些什么来实现这一目标吗?
预先非常感谢您的回答。
小智 0
脚步 :
1.python -m pip install django-cors-headers
2.INSTALLED_APPS = [ ..., "corsheaders", ..., ] #add it to your installed apps:
3.#添加一个中间件类来监听响应,
MIDDLEWARE = [ ..., "corsheaders.middleware.CorsMiddleware", "django.middleware.common.CommonMiddleware", ..., ]
4.CORS_ALLOWED_ORIGINS = [ "https://api.mydomain.com", ]
就是这样!