首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Django跨域问题(CORS错误)

Django跨域问题(CORS错误)

作者头像
小小咸鱼YwY
发布2019-09-11 15:06:05
2K0
发布2019-09-11 15:06:05
举报
文章被收录于专栏:python-爬虫python-爬虫

Django跨域问题(CORS错误)

一.出现跨域问题(cors错误)的原因

通常情况下,A网页访问B服务器资源时,不满足以下三个条件其一就是跨域访问

  • 协议不同
  • 端口不同
  • 主机不同
二.Django解决跨域

1.安装django-cors-headers模块

pip3 install django-cors-headers

2.注册AAP

INSTALLED_APPS = [
    ...
    'corsheaders'
]

3.添加中间件

MIDDLEWARE = [
    ...
    'corsheaders.middleware.CorsMiddleware'
]
三.跨域设置

settings.py中配置

1.允许所有来源访问

CORS_ORIGIN_ALLOW_ALL = True

2.允许部分来源访问

CORS_ORIGIN_ALLOW_ALL = False

CORS_ORIGIN_WHITELIST = [ 'http://example.com' #允许访问的来源]

设置指定来源注意点:

  • 来源必须标明:ip,端口,协议,而且ip,协议,端口一一对应才能获取
  • 当中的127.0.0.1与localhost代表的不是同一个
    • 比如说你选了http://127.0.0.1:1000 你发起请求时http://localhost:1000 数据就没法获得
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Django跨域问题(CORS错误)
    • 一.出现跨域问题(cors错误)的原因
      • 二.Django解决跨域
        • 三.跨域设置
        相关产品与服务
        消息队列 TDMQ
        消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档