近期的项目要用python的django+mysql实现,以前从来没接触过python,这次项目实践算是对自己的一个挑战和提升。
经过一番猛如虎的操作,python环境,django和mysql也都安装好了(其中的大坑以后再说),这次记录一下解决跨域的问题,因为对于初学者的我来说是非常容易遗忘的。
django中解决跨域使用django-cors-headers模块来实现
解决跨域前显示的内容
基本可以分为4部:
1,安装 pip install django-cors-headers
2,注册到setting中的INSTALL_APPS中(名称为'corsheader')
3,在setting的中间件集合中添加'corsheaders.middleware.CorsMiddleware',特别注意要将'django.middleware.csrf.CsrfViewMiddleware'注释掉,网上说这个中间件采用的一种安全加密方法导致的跨域请示失败,目前尚不清楚删除后会有什么不良后果
4,添加cors运行策略(配置)
CORS_ALLOW_CREDENTIALS = True CORS_ORIGIN_ALLOW_ALL = True #单独列出白名单地址可以通过以下方法 # CORS_ORIGIN_WHITELIST = ('http://192.168.1.105:7123') CORS_ALLOW_METHODS = ( 'DELETE', 'GET', 'OPTIONS', 'PATCH', 'POST', 'PUT', 'VIEW', ) CORS_ALLOW_HEADERS = ( 'accept', 'accept-encoding', 'authorization', 'content-type', 'dnt', 'origin', 'user-agent', 'x-csrftoken', 'x-requested-with', )
经过以上操作,可以访问了