跨域问题解决

Django的跨域问题

1.什么是跨域问题?跨域产生原因是啥?

  通常情况下,跨域产生的原因是A浏览器要向B服务器请求资源时,如果下面的三个条件不满足就是涉及跨域问题:

  1. 协议不同
  2. 主机不同
  3. 端口号不同

2.Django中处理跨域请求资源的方案:

# 首先安装第三方模块
pip3 install django-cors-headers
# 接着在Django项目的settings项目配置中注册
INSTALLED_APPS = [
    ...
    'corsheaders'
]
# 再者在中间件里添加中间件
MIDDLEWARE = [
    ...
    'corsheaders.middleware.CorsMiddleware'
]
# 最后允许跨域原(所有主机默认)
CORS_ORIGIN_ALLOW_ALL = True



# 添加访问的额白名单(指定主机访问)
#单个配置
CORS_ORIGIN_WHITELIST =(
   ' 域名',
)
#正则配置:
CORS_ORIGIN_REGEX_WHITELIST =(r'^(https?://)?(\w+\.)?jim\.com $',)

posted on 2019-07-08 15:13  程序小王的生命周期  阅读(153)  评论(1编辑  收藏  举报

导航