Python Flask前后端Ajax交互的方法示例


Posted in Python onJuly 31, 2018

之前总结过flask里的基础知识,现在来总结下flask里的前后端数据交互的知识,这里用的是Ajax

一、 post方法

1、post方法的位置:在前端HTML里,绑定在一个按钮的点击函数里,或者一个鼠标输入框点击离开事件。

(1)数据附在URL里(请求路径),发送到后端。

/*前端HTML<script>里:*/
$.post("/js_post/"+ip, data_to_backend, function(data){alert("success "+data)} );

其中ip,data_to_backend是在此代码前定义好的;data_to_backend一般是一个json数据(data_to_backend={'ip':$(this).parent().prev().text()}),而data是来自后端的返回数据。

#后端py文件(路由启动前面的html的py文件)里:添加一个路由处理前端post请求
@app.route("/js_post/<ip>", methods=['GET', 'POST'])
def js_post(ip):
   print ip
   return ip +" - ip"

点击按钮后的效果:

Python Flask前后端Ajax交互的方法示例

前端定义弹窗数据

Python Flask前后端Ajax交互的方法示例

ip在URL里

(2)数据单独发送给后端

var ip = $(this).parent().prev().prev().prev().prev().text();
data_tmp = {'ip':ip, 'text':"success for ajax"};  // data to send to server.
$.post('/js_call', data_tmp, function(data){alert(data)});

后端处理程序:

@app.route('/js_call', methods=['GET', 'POST'])
def js_call():  
   print request.values['ip']  
   print request.values['text']  
   # to send the command by ssh : os.system("ssh user@host \' restart(command) \' ")  
   return 'ok!!!!'

Python Flask前后端Ajax交互的方法示例

post独立数据发送

二、get方法(同样可以发数据)

$.get('/js_get', {'method':'GET', 'text':"from-html"}, function(data){alert(data)})

后端路由接收处理:

@app.route('/js_get', methods=['GET'])
def js_get():
  print "method: "+request.values['method']+" --- text: "+request.values['text']
  return "get success!"

Python Flask前后端Ajax交互的方法示例

get成功

Python Flask前后端Ajax交互的方法示例

数据接收成功

注意的是:其中后端py文件的类似request.values['method']的获取数据的request是一个Python flask的模块,需要导入。

总结:

  • 在flask框架里,Ajax请求对于后端可以很容易实现,只需在后端Python代码中对ajax路径作出处理即可。
  • Ajax的post, get方法均可以向后台发送数据,只是一般用post发数据(做出改变),get请求数据(不改变)。

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

Python 相关文章推荐
Python语言的12个基础知识点小结
Jul 10 Python
Python基于scrapy采集数据时使用代理服务器的方法
Apr 16 Python
剖析Python的Tornado框架中session支持的实现代码
Aug 21 Python
python安装pil库方法及代码
Jun 25 Python
使用python turtle画高达
Jan 19 Python
对Matlab中共轭、转置和共轭装置的区别说明
May 11 Python
使用Keras预训练模型ResNet50进行图像分类方式
May 23 Python
python有几个版本
Jun 17 Python
Python 基于jwt实现认证机制流程解析
Jun 22 Python
Python爬虫之Spider类用法简单介绍
Aug 04 Python
Python colormap库的安装和使用详情
Oct 06 Python
python 实现Harris角点检测算法
Dec 11 Python
Python常见内置高效率函数用法示例
Jul 31 #Python
Python使用jsonpath-rw模块处理Json对象操作示例
Jul 31 #Python
flask-socketio实现WebSocket的方法
Jul 31 #Python
深入flask之异步非堵塞实现代码示例
Jul 31 #Python
Django框架使用富文本编辑器Uedit的方法分析
Jul 31 #Python
Windows下python3.6.4安装教程
Jul 31 #Python
windows下pycharm安装、创建文件、配置默认模板
Jul 31 #Python
You might like
超级简单的php+mysql留言本源码
2009/11/11 PHP
typecho插件编写教程(四):插件挂载
2015/05/28 PHP
php实现编辑和保存文件的方法
2015/07/20 PHP
thinkphp jquery实现图片上传和预览效果
2020/07/22 PHP
JavaScript快速检测浏览器对CSS3特性的支持情况
2012/09/26 Javascript
js数组Array sort方法使用深入分析
2013/02/21 Javascript
js图片卷帘门导航菜单特效代码分享
2015/09/10 Javascript
使用JS轻松实现ionic调用键盘搜索功能(超实用)
2016/09/06 Javascript
javascript经典特效分享 手风琴、轮播图、图片滑动
2016/09/14 Javascript
使用BootStrap进行轮播图的制作
2017/01/06 Javascript
js 判断登录界面的账号密码是否为空
2017/02/08 Javascript
基于nodejs 的多页面爬虫实例代码
2017/05/31 NodeJs
JQuery元素快速查找与操作
2018/04/22 jQuery
深入浅析Node环境和浏览器的区别
2018/08/14 Javascript
Vue指令之 v-cloak、v-text、v-html实例详解
2019/08/08 Javascript
通过实例了解JS执行上下文运行原理
2020/06/17 Javascript
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
Python中dictionary items()系列函数的用法实例
2014/08/21 Python
python 默认参数问题的陷阱
2016/02/29 Python
python验证码识别的实例详解
2016/09/09 Python
pandas DataFrame 删除重复的行的实现方法
2019/01/29 Python
在python中画正态分布图像的实例
2019/07/08 Python
pytorch 常用线性函数详解
2020/01/15 Python
Python+appium框架原生代码实现App自动化测试详解
2020/03/06 Python
Jupyter Notebook输出矢量图实例
2020/04/14 Python
keras 回调函数Callbacks 断点ModelCheckpoint教程
2020/06/18 Python
Pycharm-community-2020.2.3 社区版安装教程图文详解
2020/12/08 Python
新西兰最大的在线设计师眼镜店:SmartBuyGlasses新西兰
2017/10/20 全球购物
上海某公司.net方向笔试题
2014/09/14 面试题
简历中的自我评价范文
2014/02/05 职场文书
战略合作意向书范本
2014/04/01 职场文书
2014年司机工作总结
2014/11/21 职场文书
病危通知单
2015/04/17 职场文书
高三语文教学反思
2016/02/16 职场文书
Java面试题冲刺第十七天--基础篇3
2021/08/07 面试题
SQL Server内存机制浅探
2022/04/06 SQL Server