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 sys模块sys.path使用方法示例

python sys模块包含了与python解释器和它的环境有关的函数,这个你可以通过dir(sys)来查看他里面的方法和成员属性 复制代码 代码如下:import sysprint d...

对Python3中的input函数详解

对Python3中的input函数详解

下面介绍python3中的input函数及其在python2及pyhton3中的不同。 python3中的ininput函数,首先利用help(input)函数查看函数信息: 以上信息...

浅析Python 3 字符串中的 STR 和 Bytes 有什么区别

浅析Python 3 字符串中的 STR 和 Bytes 有什么区别

Python2的字符串有两种:str和Unicode,Python3的字符串也有两种:str和Bytes。Python2的str相当于Python3的Bytes,而Unicode相当于P...

Python读取Word(.docx)正文信息的方法

Python读取Word(.docx)正文信息的方法

本文介绍用Python简单读取*.docx文件信息,一些python-word库就是对这种方法的扩展。 介绍分两部分: Word(*.docx)文件简述 Python提取Wor...

python多进程实现进程间通信实例

python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程。Python提供了非常好用的多进程包multiprocessi...