python - Django CORS 标头白名单不起作用
问题描述
我正在开发一个由 Django 后端和 ReactJS 前端组成的现有代码库。一切都是码头化的,所以我正在运行后端localhost:8001
和前端localhost:3000
。
因为我在浏览器中遇到了 CORS 错误,所以我将django-cors-headers添加到 Django。但是,当我添加CORS_ORIGIN_ALLOW_ALL = True
时,我收到一条错误消息
跨域请求被阻止:同源策略不允许读取位于 '<a href="http://127.0.0.1:8001/devices/" rel="nofollow noreferrer">http://127.0.0.1 的远程资源: 8001/设备/'。(原因:如果 CORS 标头“Access-Control-Allow-Origin”为“*”,则不支持凭证)。
所以我添加了以下设置:
CORS_ORIGIN_ALLOW_ALL = False
CORS_ORIGIN_WHITELIST = (
'http//:127.0.0.1:3000',
'http//:127.0.0.1:8001',
)
但比我得到一个错误说
缺少 CORS 标头“Access-Control-Allow-Origin”
为什么白名单不起作用?我在这里做错了吗?
解决方案
当您在本地运行前端代码时,在您的浏览器中安装任何跨源浏览器扩展程序,这将很有帮助。
并将白名单网址更改如下(//:应为://):
CORS_ORIGIN_WHITELIST = (
'http://127.0.0.1:3000',
'http://127.0.0.1:8001',
)
推荐阅读
- r - 如何根据 R 中的一个变量分离数据?
- linux - [unixODBC][Devart][ODBC][MongoDB]无法加载客户端库:libmongoc-1.0.so.0 (-1) (SQLDriverConnect)') 错误
- javascript - 如何解决 select2 警告消息?已经提供了密钥和 ID,但仍然存在错误,任何人都可以对此有所了解
- jquery - 如何在 HTML 页面中显示 json 文件的多个层次结构(嵌套)数组?
- php - 避免使用 if/else 条件并尽早返回
- javascript - 调整 div 大小时,鼠标光标会跳跃
- ruby - 当令牌无效时,Ruby hashcorp 保险库重新授权
- python - 我正在尝试使用 imageai 训练模型,但出现以下错误:
- ios - 渲染到 CVPixelBuffer 的 CIImage(在 CIContext 的帮助下)改变颜色
- javascript - 在 Google Script 中查找最后一行