Django+uni-app实现数据通信中的请求跨域的示例代码

yipeiwu_com6年前Python基础

前后端分离的模式下,后端使用Django RestFramework,前端使用uni-app来进行APP的开发。

前端代码:

Django后端跨域配置

settings.py配置文件中添加:

INSTALLED_APPS = [

'corsheaders',
]

中间件中添加

'corsheaders.middleware.CorsMiddleware',
# 注意顺序 一定是在common中间件的前面
MIDDLEWARE = [

# 'accounts.MyCsrfMiddleware.CORSMiddleware',
'corsheaders.middleware.CorsMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
# 注意顺序 一定是在common中间件的前面
'django.middleware.common.CommonMiddleware',
]

settings.py最末尾添加:

CORS_ORIGIN_ALLOW_ALL = True

允许携带cookie:

CORS_ALLOW_CREDENTIALS = True



测试跨域访问是否成功的视图函数

`def test(request):
  return JsonResponse({"status": 0, "message": "This is Django Message!"})
`

rom django.contrib import admin

URL

from django.urls import path
from django.conf.urls import url, include

urlpatterns = [

  # test ok
  url(r'test/', views.test),

]

测试,在Hbuilder中启动前端项目,同时后端项目也启动

问题:


原因

请求头的问题


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中实现字符串翻转的方法

具体代码如下所示: #字符串反转 def reverse (s): rt = '' for i in range(len(s)-1,-1,-1): rt += s[i...

pycharm远程linux开发和调试代码的方法

pycharm远程linux开发和调试代码的方法

pycharm是一个非常强大的python开发工具,现在很多代码最终在线上跑的环境都是linux,而开发环境可能还是windows下开发,这就需要经常在linux上进行调试,或者在lin...

python3使用PyMysql连接mysql数据库实例

python语言的3.x完全不向前兼容,导致我们在python2.x中可以正常使用的库,到了python3就用不了了.比如说mysqldb 目前MySQLdb并不支持python3.x...

python实现简单flappy bird

本文实例为大家分享了python实现flappy bird的简单代码,供大家参考,具体内容如下 import pygame from pygame.locals import * f...

Python基础学习之类与实例基本用法与注意事项详解

本文实例讲述了Python基础学习之类与实例基本用法与注意事项。分享给大家供大家参考,具体如下: 前言 和其他编程语言相比,Python用非常少的新语法和语义将类加入到语言中。Pytho...