reactjs - 请求的资源 React Django 错误上不存在“Access-Control-Allow-Origin”标头
问题描述
CORS 策略已阻止从源“http://localhost:8000/api/product/”获取“http://localhost:8000/api/product/”的访问权限:不存在“Access-Control-Allow-Origin”标头请求的资源。如果不透明的响应满足您的需求,请将请求的模式设置为“no-cors”以获取禁用 CORS 的资源。
解决方案
此错误是由您的 django 后端引起的。您可以采取以下措施来解决它:
- 使用像@seddouguim 建议的 pip 安装 django-cors-headers
- 在 django settings.py 文件中将“corsheaders”添加到已安装的应用程序中
- 在同一 settings.py 文件的底部,您可以添加一个名为
CORS_ORIGIN_WHITELIST=['localhost:3000']
(或您要添加的任何 URL)的设置,或者您可以设置CORS_ORIGIN_ALLOW_ALL = True
(适用于开发环境,但不适用于生产环境) - 最后设置
CORS_ALLOW_HEADERS = ("x-requested-with", "content-type", "accept", "origin", "authorization", "x-csrftoken")
你应该很高兴
如果您遇到任何其他问题,请随时告诉我
推荐阅读
- vb.net - 调度异步 httpClient 的最佳方式
- html - Summernote 编辑器验证允许一些 html 标签,如, ,
- ,
- 但不是特殊字符
- morphia - 吗啡。我不知道,如何正确使用 isStoreEmpties()
- c# - 如何用枚举过滤布尔字段?
- ios - 当我在 numberOfItemsInSection 中返回 1 时,在 Swift 中未调用 cellForItemAt
- android - adb命令类似于reverse?
- javascript - 如何使用 JavaScript 添加指向元素的链接?
- html - 将文本放在图像的顶部和中间
- javascript - 如何在每次点击后清除按钮点击的内容并生成新的
- office-ui-fabric - 如何从 MaskedTextField 获取未屏蔽的值 - FluentUI