zoukankan      html  css  js  c++  java
  • CORS跨域djangosetting.py 配置

    1 什么是 CORS?

    Cross-Origin Resource Sharing(CORS)跨域资源共享是一份浏览器技术的规范,提供了 Web 服务从不同域传来沙盒脚本的方法,以避开浏览器的同源策略,是 JSONP 模式的现代版。与 JSONP 不同,CORS 除了 GET 要求方法以外也支持其他的 HTTP 要求。用 CORS 可以让网页设计师用一般的 XMLHttpRequest,这种方式的错误处理比 JSONP 要来的好。另一方面,JSONP 可以在不支持 CORS 的老旧浏览器上运作。现代的浏览器都支持 CORS。

    2 什么是跨域

    如果在A网站中,我们希望使用Ajax来获得B网站中的特定内容
    如果A网站与B网站不在同一个域中,那么就出现了跨域访问问题.

    由于浏览器同源策略,凡是发送请求url的协议、域名、端口三者之间任意一与当前页面地址不同即为跨域。具体可以查看下表(来源)

    在这里插入图片描述

    settings.py配置

    • 要先下载的包 pip install django-cors-headers
    INSTALLED_APPS = [
    
        'corsheaders',  #	添加一个
    ] 
    
    MIDDLEWARE = [
        'corsheaders.middleware.CorsMiddleware',  #添加这行
        'django.middleware.common.CommonMiddleware',
    ]
    
    
    CORS_ALLOW_CREDENTIALS = True
    CORS_ORIGIN_ALLOW_ALL = True
    #CORS_ORIGIN_WHITELIST = (     
    #    '*',
    #)
    
    CORS_ALLOW_METHODS = (
        'DELETE',
        'GET',
        'OPTIONS',
        'PATCH',
        'POST',
        'PUT',
        'VIEW',
    )
    
    CORS_ALLOW_HEADERS = (
        'XMLHttpRequest',
        'X_FILENAME',
        'accept-encoding',
        'authorization',
        'content-type',
        'dnt',
        'origin',
        'user-agent',
        'x-csrftoken',
        'x-requested-with',
        'Pragma',
    )
  • 相关阅读:
    自动从vss下载代码并编译的脚本
    自动执行Sql脚本的批处理
    编译 SharpDevelop2.2源码 经过
    .net框架源代码批量下载器使用方法
    sql server 解决孤立用户问题
    元数据学习分享
    SQL注入攻击的原理及其防范措施(转)
    .Net Remoting和Web Service浅析(转)
    usercontrol 和 page 的继承
    如何提高页面现实速度
  • 原文地址:https://www.cnblogs.com/zxs117/p/11120455.html
Copyright © 2011-2022 走看看