设置域名跨越访问

  1. 跨域:指浏览器不能执行其他网站的脚本,这是由于浏览器的同源策略造成的。同源策略是浏览器为了用户安全而实施的一种安全限制。当从一个域名的网页去请求另一个域名的资源时,如果域名、端口、协议任意一个不同,就属于跨域。
  2. CORS(跨域资源共享):是一个W3C标准,全称是Cross-Origin Resource Sharing。它克服了AJAX只能同源使用的限制,通过在后端服务器响应数据中设置响应头信息,允许浏览器执行跨域请求。

安装django-cors-headers

bash 复制代码
pip3 install django-cors-headers

修改settings.py

python 复制代码
#在自己开发的时候可以设置所有ip可以访问

ALLOWED_HOSTS = ['*',] 	# 允许所有的IP可以访问

INSTALLED_APPS = [
    ......
    'corsheaders',
    ......
]

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    "corsheaders.middleware.CorsMiddleware", #这个中间件一定要在一些访问respone的中间件的前面,#以便能够正常加载
    'django.middleware.common.CommonMiddleware',
    #关闭csrf保护
    #'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

在自己开发的时候可以设置允许所有域名都可以跨越访问

python 复制代码
#允许所有的域名跨越访问
CORS_ALLOW_ALL_ORIGINS = True

这样django的跨越访问就设置完成了

详细见官方文档django-cors-headers · PyPI

相关推荐
TDengine (老段)11 分钟前
TDengine 常见问题 TOP3
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
螺蛳粉 螺蛳粉3 小时前
MySQL 分布式集群系列 · 第五篇——全方位对比:NDB、MGR、主从复制、分库分表怎么选?
数据库·分布式·mysql
这个DBA有点耶7 小时前
从OLTP到OLAP到HTAP:数据库负载分类的技术演进与选型指南
数据库·mysql·架构
YangYang9YangYan8 小时前
商业数据分析校招项目怎么选,附项目设计与简历包装思路
大数据·数据库·数据分析
李白客8 小时前
数据库培训怎么选?零基础到DBA的学习路线与机构认证对比(2026)
数据库·学习
shark-chili9 小时前
关于AI辅助编程的认知
数据库·人工智能·redis·macos·缓存
SendTomo9 小时前
.ico透明图标在线生成下载平台深度解析
大数据·数据结构·数据库·数据仓库·个人开发
蓝速科技9 小时前
国产化信创终端等保合规核心防护与落地方案丨蓝速科技
大数据·运维·数据库·人工智能·科技
IvorySQL9 小时前
PostgreSQL 日报|在线校验和特性被回退(9 月 17 日)
数据库·人工智能·postgresql
实验室管理云平台9 小时前
北京盛元广通检测管理方案:信息集成、质量控制与移动应用
大数据·数据库·科技