【发布时间】:2023-03-21 14:03:01
【问题描述】:
我正在使用 ionic 框架构建一个应用程序,后端用 Django 编写。
当我尝试进行测试时,我收到以下错误消息
跨域请求被阻止:同源策略不允许读取 http://localhost:8000/api/ 的远程资源。 (原因:CORS 标头“Access-Control-Allow-Origin”缺失)。
我看到了一些文档,有人提到我需要在 ionic.config.json 下添加代理,所以我添加了看起来像这样的代理
"proxies":[
{
"path":"/api",
"proxyUrl": "http://localhost:8000/api"
}
]
提前致谢
【问题讨论】:
-
您需要安装django-cors-headers 包,用于处理跨域资源共享所需的服务器头
-
当我添加这个包时,我收到了这个错误。禁止(未设置 CSRF cookie。)
-
将此行添加到您的设置中
CORS_ORIGIN_ALLOW_ALL = True,同时确保您已尽可能高地添加CorsMiddleware,尤其是在任何可以生成响应的中间件之前,例如Django的CommonMiddleware
标签: django angular ionic-framework