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


Posted in Python onNovember 04, 2020

1.跨域原理

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

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

// 允许 http://localhost:8080 这个网站打开的页面中的js访问我
Access-Control-Allow-Origin: http://localhost:8080
// 允许携带cookie访问我
Access-Control-Allow-Credentials: true

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

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

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视图函数

from django.http import JsonResponse
import json
def login(request):
body_dict = json.loads( request.body )

print(body_dict,8888888)

name = body_dict.get('name')

pwd = body_dict.get('pwd')

if not all([name, pwd]):


resp = {


"code": 1001,


"msg": '信息不全'


}


return JsonResponse(resp)

if name == 'zhangsan' and pwd == '123456':


resp = {



"code": 0,



"msg": '登录成功',



"data": {



"id": 1,



"name": '张三',



"age": 18



}


}


return JsonResponse(resp)

return JsonResponse({


"code": 1002,


"msg": '验证失败'

})

3.3 测试接口

1http://192.168.56.100:8888/user/login/

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python基于smtplib实现异步发送邮件服务
May 28 Python
python3下实现搜狗AI API的代码示例
Apr 10 Python
python中ASCII码和字符的转换方法
Jul 09 Python
使用pandas读取文件的实现
Jul 31 Python
python滑块验证码的破解实现
Nov 10 Python
tensorflow2.0保存和恢复模型3种方法
Feb 03 Python
python爬虫开发之selenium模块详细使用方法与实例全解
Mar 09 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
Jun 23 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
Aug 04 Python
python实现人工蜂群算法
Sep 18 Python
Python3.9.1中使用split()的处理方法(推荐)
Feb 07 Python
python 安全地删除列表元素的方法
Mar 16 Python
Python基于Serializer实现字段验证及序列化
Nov 04 #Python
pycharm使用技巧之自动调整代码格式总结
Nov 04 #Python
利用Python pandas对Excel进行合并的方法示例
Nov 04 #Python
Python实现冒泡排序算法的完整实例
Nov 04 #Python
Lombok插件安装(IDEA)及配置jar包使用详解
Nov 04 #Python
基于OpenCV的路面质量检测的实现
Nov 04 #Python
Pycharm同步远程服务器调试的方法步骤
Nov 04 #Python
You might like
php代码优化及php相关问题总结
2006/10/09 PHP
用PHP和ACCESS写聊天室(九)
2006/10/09 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
php for 循环使用的简单实例
2016/06/02 PHP
PHP生成图表pChart的示例解析
2020/07/31 PHP
jQuery 打造动态下滑菜单实现说明
2010/04/15 Javascript
编程语言JavaScript简介
2014/10/16 Javascript
初识Node.js
2015/03/20 Javascript
AngularJS中如何使用$http对MongoLab数据表进行增删改查
2016/01/23 Javascript
利用jQuery设计一个简单的web音乐播放器的实例分享
2016/03/08 Javascript
纯JS实现可拖拽表单的简单实例
2016/09/02 Javascript
基于Vue过渡状态实例讲解
2017/09/14 Javascript
解决Angular4项目部署到服务器上刷新404的问题
2018/08/31 Javascript
angularjs性能优化的方法
2018/09/05 Javascript
JavaScript ES6中的简写语法总结与使用技巧
2018/12/30 Javascript
使用flow来规范javascript的变量类型
2019/09/12 Javascript
10分钟学会js处理json的常用方法
2020/12/06 Javascript
用Javascript实现发送短信验证码间隔功能
2021/02/08 Javascript
python检测是文件还是目录的方法
2015/07/03 Python
python引入导入自定义模块和外部文件的实例
2017/07/24 Python
Python数据分析之如何利用pandas查询数据示例代码
2017/09/01 Python
python去重,一个由dict组成的list的去重示例
2019/01/21 Python
python 中的列表生成式、生成器表达式、模块导入
2019/06/19 Python
python如何爬取网站数据并进行数据可视化
2019/07/08 Python
Django为窗体加上防机器人的验证码功能过程解析
2019/08/14 Python
django实现日志按日期分割
2020/05/21 Python
推荐技术人员一款Python开源库(造数据神器)
2020/07/08 Python
Python 虚拟环境工作原理解析
2020/12/24 Python
Urban Decay官方网站:美国化妆品品牌
2020/06/04 全球购物
经管应届生求职信
2013/11/17 职场文书
幼儿园中秋节活动方案
2014/02/06 职场文书
2014感恩节演讲稿大全
2014/10/11 职场文书
群众对十八届四中全会的期盼
2014/10/17 职场文书
暑假安全保证书
2015/02/28 职场文书
老乡聚会通知
2015/04/23 职场文书
提档介绍信范文
2015/10/22 职场文书