码迷,mamicode.com
首页 > 其他好文 > 详细

django 实现全局支持跨域请求

时间:2018-09-05 09:04:42      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:tar   请求头   install   target   com   log   view   post   http   

Django 允许跨域请求

一.django 实现支持跨域请求,本人所了解到的方法有两种:

  1.视图中进行配置,只实现当前视图支持跨域请求

  2.进行全局配置,实现所有视图均支持跨域请求

这里对第二种方法进行一下说明:

1.安装django-cors-headers

pip install django-cors-headers

2.配置settings.py文件

INSTALLED_APPS = [

    ...

    corsheaders,

    ...

]
MIDDLEWARE_CLASSES = (

    ...

    corsheaders.middleware.CorsMiddleware,

    django.middleware.common.CommonMiddleware, # 注意顺序,必须在corsheaders.middleware.CorsMiddleware之后
    ...

)
# 跨域增加忽略

CORS_ALLOW_CREDENTIALS = True

CORS_ORIGIN_ALLOW_ALL = True  # 设置支持所有域名访问,如果为False,下面的一项需要指定ip

CORS_ORIGIN_WHITELIST = (*) # * 支持所有域名进行访问,当设置不支持所有域名进行访问时,需要传入一个列表: ["域名1","域名2"]
# 设置允许哪些请求方式进行跨域请求
CORS_ALLOW_METHODS = (

    DELETE,

    GET,

    OPTIONS,

    PATCH,

    POST,

    PUT,

    VIEW,

)
# 接受请求头。默认的如下:

default_headers = (

    accept,

    accept-encoding,

    authorization,

    content-type,

    dnt,

    origin,

    user-agent,

    x-csrftoken,

    x-requested-with,

)

# 如果默认接受的请求头不包含对方进行请求时的请求头,需要重新定义:CORS_ALLOW_HEADERS 

配置完毕,如果只需要实现单个视图支持跨域请求请点击: https://www.cnblogs.com/lowmanisbusy/p/9108476.html

 

django 实现全局支持跨域请求

标签:tar   请求头   install   target   com   log   view   post   http   

原文地址:https://www.cnblogs.com/lowmanisbusy/p/9589432.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!