Django跨域问题解决

一、问题原因

跨域是指a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,或是a页面为ip地址,b页面为域名地址,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源。

二、解决方案

1、安装包

pip install django-cors-headers

2、注册

INSTALLED_APPS = (
    ...
    'corsheaders',
    ...
)

3、注册中间件

MIDDLEWARE = [
    'corsheaders.middleware.CorsMiddleware',
    ...
]

4、添加白名单

# CORS
CORS_ORIGIN_WHITELIST = (
    '127.0.0.1:8080',
    'localhost:8080',
    'www.meiduo.site:8080',
    'api.meiduo.site:8000'
)
CORS_ALLOW_CREDENTIALS = True  # 允许携带cookie

猜你喜欢

转载自blog.csdn.net/Uzizi/article/details/81293486