djangoDjango实战015:django-cors-headers跨越配置不起作用问题解决


今天给Django项目配置django-cors-headers跨越的时候遇到一个问题 , 项目是用Python3.6.4安装的Django3.1框架 , 安装的django-cors-headers模块是3.4版本的 。 并在settings中对corsheaders进行了注册和配置 , 最先报的错误是Origin "*" in CORS_ORIGIN_WHITELIST is missing scheme or netloc 。 后来发现django-cors-headers新版本修改了白名单写法 , django-cors-headers版本3.0以上需要加http://来定义允许的请求地址和端口 。
djangoDjango实战015:django-cors-headers跨越配置不起作用问题解决
本文插图
django-cors-headers报错 Python就是这点不好 , 同一个模块不同版本之间还不兼容 。 有段时间没用Django感觉都不会了... , 解决这个问题之后又出现了新的错误提示:No module named "corsheaders.middleware.CorsMiddlewaredjango" "corsh
eaders.middleware" is not a package(意思是没有找到模板) 。
djangoDjango实战015:django-cors-headers跨越配置不起作用问题解决
本文插图
?cannot import name "six"报错解决 以前出现过Django与django-cors-headers版本不匹配的情况 , 不知道是不是django-cors-headers版本的问题 。 于是我尝试更换django-cors-headers版本测试下 , 测试出现ImportError: cannot import name "six"报错 。 找半天是因为Django新版本不在使用six把django.utils.six移除掉了 , 这Django升级到3.0后也未必是件好事呀...
djangoDjango实战015:django-cors-headers跨越配置不起作用问题解决
本文插图
?重装django-cors-headers
这应该还是 django-cors-headers没安装好 , 于是我们把django-cors-headers卸载了重新安装 。 这回不直接用pip install django-cors-headers而是python -m pip install django-cors-headers , python -m 可以指定Python解释器进行模块安装(应该是我之前安装过其他版本的python没卸载干净) 。 这回只显报错ModuleNotFoundError: No module named "corsheaders.middleware" , 说明还缺少了corsheaders.middleware 。
? 引入 django-cors-middleware 直接执行安装命令:pip install django-cors-middleware先安装试试 , 安装完成之后启动项目久违的页面又回来了 。 重新将django==3.1和django-cors-headers==3.4更新到最新版同样没问题 , 当前django-cors-middleware==1.5.0为最新版本(记得以前不需要安装django-cors-middleware模块吧...) 。
【djangoDjango实战015:django-cors-headers跨越配置不起作用问题解决】
djangoDjango实战015:django-cors-headers跨越配置不起作用问题解决
本文插图
?总结:
Django新版本安装配置django-cors-headers需要同时安装 django-cors-middleware , django-cors-headers版本3.0以上配置白名单时需要加上http://前缀来定义允许的请求地址和端口 。 以上内容是小编给大家分享的【Django实战015:django-cors-headers跨越配置不起作用问题解决】 , 希望对大家有所帮助 , 如果大家有任何疑问请给我留言 , 小编会及时回复大家的 。 更多Django实战攻略可以查阅专栏《Django实战系列》 , 带你了解更多Django实用技巧!
djangoDjango实战015:django-cors-headers跨越配置不起作用问题解决
本文插图
专栏Django实战系列作者:编程手札19.9币16人已购查看【来源:编程手札】
声明:转载此文是出于传递更多信息之目的 。 若有来源标注错误或侵犯了您的合法权益 , 请作者持权属证明与本网联系 , 我们将及时更正、删除 , 谢谢 。邮箱地址:newmedia@xxcb.cn


推荐阅读