Django中实现跨域

Posted kopok

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django中实现跨域相关的知识,希望对你有一定的参考价值。

一、未安装django-cors-headers的需要安装

# 虚拟环境-安装 django-cors-headers 解决跨域问题:
pip3 install django-cors-headers -i https://pypi.tuna.tsinghua.edu.cn/simple

二、dev.py中添加应用

INSTALLED_APPS = (
    ...
    # 添加 django-cors-headers 使其可以进行 cors 跨域
    \'corsheaders\',
    ...
)

三、dev.py中添加中间件

MIDDLEWARE = [
    ...
    # 添加 django-cors-headers 使其可以进行 cors 跨域,放在最上面注册
    \'corsheaders.middleware.CorsMiddleware\',
]

四、dev.py中添加白名单

# CORS跨域请求白名单设置
CORS_ORIGIN_WHITELIST = (
    \'http://127.0.0.1:8080\',
    \'http://localhost:8080\',
    \'http://www.meiduo.site:8080\',
)
CORS_ALLOW_CREDENTIALS = True  # 允许携带cookie

五、dev.py中编辑ALLOWED_HOSTS
如果不是ALLOWED_HOSTS[*],需要进行添加

ALLOWED_HOSTS = [\'api.meiduo.site\', 
                 \'127.0.0.1\', 
                 \'localhost\', 
                 \'www.meiduo.site\']

补充:协议(http、https)、主机ip 和 端口port 都相同的两个地址是同源地址,否则是非同源地址

以上是关于Django中实现跨域的主要内容,如果未能解决你的问题,请参考以下文章

在electron中实现跨域请求

SpringBoot 中实现跨域的5种方式

SpringBoot 中实现跨域的5种方式

SpringBoot 中实现跨域的5种方式

SpringBoot 中实现跨域的5种方式

Spring Boot 中实现跨域的 5 种方式,你一定要知道!