设置域名跨越访问

  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

相关推荐
一把年纪学编程11 分钟前
【牛马技巧】word统计每一段的字数接近“字数统计”
前端·数据库·word
极小狐16 分钟前
极狐GitLab 通用软件包存储库功能介绍
java·数据库·c#·gitlab·maven
钢铁男儿21 分钟前
C# 方法(可选参数)
数据库·mysql·c#
陆少枫41 分钟前
MySQL基础关键_013_常用 DBA 命令
数据库·mysql
赵渝强老师1 小时前
【赵渝强老师】在PostgreSQL中使用file_fdw访问外部文件系统
数据库·postgresql
智_永无止境1 小时前
Redis 8.0携新功能,重新开源
数据库·redis·开源
阿乾之铭2 小时前
Spring Boot 参数验证
java·数据库·mysql
唐人街都是苦瓜脸2 小时前
MySQL创建了一个索引表,如何来验证这个索引表是否使用了呢?
数据库·mysql
前进的程序员3 小时前
SQLite 数据库常见问题及解决方法
数据库·sqlite
zhcong_3 小时前
MySQL数据库操作
数据库·mysql