同源策略以及cors跨域

同源策略以及cors跨域问题

"""
如果两个页面的协议,ip,以及端口都相同,则两个页面具有相同的源
只要有一个不同,那都不满足同源策略

那目前很多的都是前后端分离的项目,前端和后端的服务器是部署在不同的端口上的

cors全称是“资源跨域共享”,它允许浏览器向跨源服务器发送xmlhttprequest请求,从而解决ajax只能同源使用的限制,我们可以使用django-cors-headers去解决cors跨域问题
"""

后台处理跨域

安装插件
>: pip install django-cors-headers

插件参考地址:https://github.com/ottoyiu/django-cors-headers/
项目配置:dev.py
# 注册app
INSTALLED_APPS = [
	...
	'corsheaders',
]

# 添加中间件
MIDDLEWARE = [
	...
	'corsheaders.middleware.CorsMiddleware',  # 最好添加到第一个去
]

# 允许跨域源
CORS_ORIGIN_ALLOW_ALL = True

# 允许的请求头
CORS_ALLOW_HEADERS = (
    "accept",
    "accept-encoding",
    "authorization",
    "content-type",
    "dnt",
    "origin",
    "user-agent",
    "x-csrftoken",
    "x-requested-with",

    # 额外允许的请求头
    'token',
)
posted @ 2020-04-13 22:34  alen_zhan  阅读(209)  评论(0编辑  收藏  举报
返回顶部