我目前正在构建一个 Web 应用程序。
>
我的前端是使用React和Axios开发的(用于API调用请求)。Nginx在app.mydomain.com上直接提供服务
我的后端是用Django和Django Rest开发的。它与api.mydomain.com的Nginx和Gunicorn一起供应。它只服务于APIendpoint。
所以前端和后端是分开的。
我希望只有我的前端(app.mydomain.com)能够向我的Django Rest后端发出API请求。
我想防止任何其他领域,任何客户,如邮递员,失眠,卷曲或任何脚本,使我的后端API请求。
我已经在Django Rest中设置了CORS。但是,我仍然可以使用curl或任何其他客户端向后端发出请求。
你知道我能做些什么来实现这个目标吗?
非常感谢你的回答。
步骤:
1.python-m pip安装django cors头
2.INSTALLED_APPS = [ ..., “corsheaders”, ..., ] #add它到您安装的应用程序:
3.#添加中间件类以侦听响应,
MIDDLEWARE=[…,“corheaders.MIDDLEWARE.CorsMiddleware”,“django.MIDDLEWARE.common.CommonMiddleware”…,]
4.CORS_ALLOWED_ORIGINS = [ " https://api.mydomain.com ", ] 代码>
就是这样!