什么是CORS ?

CORS(跨域资源共享,Cross-Origin Resource Sharing)是一种跨域访问的机制,可让Ajax实现跨域访问。

其实,在服务器的response header中,加入“Access-Control-Allow-Origin: *”便可支持CORS,很是的简单,apache/nginx等怎么配置,见参考文档。

django-cors-headers 的作用 ?

将跨源资源共享 (CORS) 标头添加到响应的 Django 应用程序。这允许从其他来源向您的 Django

应用程序发出浏览器内请求。

1. 安装django-cors-headers

pip install django-cors-headers

2. 添加到应用程序中

INSTALLED_APPS  =  [ 
    ... , 
    "corsheaders" , 
    ... , 
]

3. 在中间键中监听响应

CorsMiddleware 需要放在第一位,不放在第一位,可能会造成某些请求没有添加CORS。

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

4. 设置访问白名单

# CORS_ORIGIN_ALLOW_ALL为True, 指定所有域名(ip)都可以访问后端接口, 默认为False
CORS_ORIGIN_ALLOW_ALL = True

5. 设置允许携带cookie

CORS_ALLOW_CREDENTIALS = True

6. 默认请求头列表。

CORS_ALLOW_HEADERS  =  [ 
    "accept" , 
    "accept-encoding" , 
    "authorization" , 
    "content-type" , 
    "dnt" , 
    "origin" , 
    "user-agent" , 
    "x-csrftoken" , 
    "x-requested-with" , 
]

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐