Django CORS跨域支持

服务端安装跨域组件

复制代码
pip install django-cors-headers

添加子应用,settings/dev.py,代码:

python 复制代码
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'corsheaders', # cors跨域子应用
    
    'home',  # apps已经在上面加入到python的系统导包路径列表了,这里还是出现背景颜色,原因是python虽然找到home,pycharm不知道。所以可以鼠标右键,设置apps为mark as source root
]

注册CorsMiddleware中间件【必须写在第一个位置】,settings/dev.py,代码:

python 复制代码
MIDDLEWARE = [
    'corsheaders.middleware.CorsMiddleware',  # cors跨域的中间件
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

添加客户端访问服务端的白名单,设置允许哪些客户端客户端跨域访问服务端,settings/dev.py,代码:

python 复制代码
# CORS的配置信息: 
# 方案1:
# CORS_ORIGIN_WHITELIST = (
#     'http://www.leshen.cn:3000',
# )
# CORS_ALLOW_CREDENTIALS = False  # 不允许ajax跨域请求时携带cookie

# 方案2:
CORS_ALLOW_ALL_ORIGINS = True
相关推荐
红烧大青虫6 分钟前
HarmonyOS应用开发实战:小事记 - UIAbility 的冷启动/热启动/后台启动三种场景与 launchParam 解析
后端·华为·harmonyos·鸿蒙系统
码事漫谈9 分钟前
AI Token 缓存:命中省 10 倍,不命中白扔钱
后端
65岁退休Coder11 分钟前
LangChain v1.3.4 笔记 - 04 Agent 中间件
后端
神奇小汤圆1 小时前
一个接口多个实现,Spring 怎么"适配多场景"?
后端
花开彼岸天~1 小时前
鸿蒙原生开发手记:徒步迹 - 自定义组件开发规范
后端·华为·harmonyos·鸿蒙系统
我的xiaodoujiao1 小时前
快速学习Python基础知识详细图文教程9--函数进阶
开发语言·python·学习·测试工具
weixin_408099672 小时前
2026 图片去水印 API 接口完全指南:一键去除图片水印(附 Python/Java/PHP/C# 示例)
java·python·php·图片处理·api调用·图片去水印·石榴智能
去码头整点薯条ing2 小时前
某当网登录滑块【协议+OCR】
爬虫·python·ocr
songroom3 小时前
Kimi K3:Rust封装XTP接口详细教程实践
开发语言·后端·rust
kebeiovo3 小时前
游戏服务端开发:Actor模型详解(Go语言)
开发语言·后端·golang