Django配置跨域并开法测试接口

1.跨域原理

1.首先浏览器安全策略限制js  ajax跨域访问服务器

2.如果服务器返回的头部信息中有当前域:

  // 允许 http://localhost:8080 这个网站打开的页面中的js访问我

  Access-Control-Allow-Origin: http://localhost:8080

  // 允许携带cookie访问我 Access-Control-Allow-Credentials: true

  那么浏览器可以让js请求该服务器

  

 

 

 

2. Django cors设置:

  1. 安装包

    pip install django-cors-headers

 

  2.注册应用

    INSTALLED_APPS = [

      ...

      # 添加 django-cors-headers 使其可以进行 cors 跨域

      'corsheaders'

     ]

  3.添加中间件

    MIDDLEWARE = [

      # 放在中间件第一个

      'corsheaders.middleware.CorsMiddleware',

      ...

    ]

  4. 设置

    # CORS跨域请求白名单设置

    CORS_ORIGIN_WHITELIST = (

      'http://127.0.0.1:8080',

      'http://localhost:8080',

     )

     CORS_ALLOW_CREDENTIALS = True      # 允许携带cookie

 

3.登录接口测试

  3.1 user/usrs.py中配置路由

    urlpatterns = [

       path('login/', views.login),

    ]

    3.2 user/views.py中写一个login视图函数  

 

posted @ 2020-10-09 16:16  兜兜里有糖-  阅读(90)  评论(0编辑  收藏  举报