写在前面:
关于浏览器的同源策略
:
-
出于防范跨站脚本的攻击,
-
禁止客户端(前端地址: 127.0.0.1:8080)的脚本(如 JavaScript, )
-
对不同域(我们的项目地址:127.0.0.1:8000)的服务进行跨站调用。
-
1. 协议名protocol
、2. 主机host
、3. 端口号port
三者一致 即为 同源
安装
pip install django-cors-headers
添加应用
# settings.py
INSTALLED_APPS = (
...
'corsheaders',
...
)
中间层设置(放在最上面)
# settings.py
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware',
...
]
添加白名单
# CORS
CORS_ORIGIN_WHITELIST = (
'127.0.0.1:8080', # 设置这些地址的脚本请求 可以 访问 我们的 Django项目
'localhost:8080',
'www.meiduo.site:8080'
)
CORS_ALLOW_CREDENTIALS = True # 允许携带cookie
设置allowed_hosts
#允许哪些主机访问 我们的 Django 项目
ALLOWED_HOSTS = ['127.0.0.1','api.meiduo.site']
网友评论