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中map和列表推导效率比较实例分析
Jun 17 Python
Python 备份程序代码实现
Mar 06 Python
用Eclipse写python程序
Feb 10 Python
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
Apr 18 Python
python调用百度语音REST API
Aug 30 Python
python用pandas数据加载、存储与文件格式的实例
Dec 07 Python
Python 使用 Pillow 模块给图片添加文字水印的方法
Aug 30 Python
python制作朋友圈九宫格图片
Nov 03 Python
使用python把xmind转换成excel测试用例的实现代码
Oct 12 Python
Pytest测试框架基本使用方法详解
Nov 25 Python
基于Python实现天天酷跑功能
Jan 06 Python
python中spy++的使用超详细教程
Jan 29 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数据库连接类~~做成一个分页类!
2006/11/25 PHP
PHP XML数据解析代码
2010/05/26 PHP
php下通过伪造http头破解防盗链的代码
2010/07/03 PHP
ECMall支持SSL连接邮件服务器的配置方法详解
2014/05/19 PHP
ECshop 迁移到 PHP7版本时遇到的兼容性问题
2016/02/15 PHP
PHP实现负载均衡的加权轮询方法分析
2018/08/22 PHP
laravel 实现向公共模板中传值 (view composer)
2019/10/22 PHP
需要做特殊处理的DOM元素属性的访问
2010/11/05 Javascript
js页面跳转的常用方法整理
2013/10/18 Javascript
JavaScript实现的字符串replaceAll函数代码分享
2015/04/02 Javascript
JavaScript数组迭代器实例分析
2015/06/09 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
2015/08/24 Javascript
利用Query+bootstrap和js两种方式实现日期选择器
2017/01/10 Javascript
js分页之前端代码实现和请求处理
2017/08/04 Javascript
小程序实现单选多选功能
2018/11/04 Javascript
从0到1搭建element后台框架优化篇(打包优化)
2019/05/12 Javascript
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
2021/02/23 Vue.js
[01:03:41]完美世界DOTA2联赛PWL S3 DLG vs Phoenix 第一场 12.17
2020/12/19 DOTA
python使用新浪微博api上传图片到微博示例
2014/01/10 Python
python数据结构之二叉树的统计与转换实例
2014/04/29 Python
用Python的Django框架编写从Google Adsense中获得报表的应用
2015/04/17 Python
python实现将元祖转换成数组的方法
2015/05/04 Python
Python中的日期时间处理详解
2016/11/17 Python
python调用opencv实现猫脸检测功能
2019/01/15 Python
浅谈Python大神都是这样处理XML文件的
2019/05/31 Python
selenium中get_cookies()和add_cookie()的用法详解
2020/01/06 Python
Python制作简单的剪刀石头布游戏
2020/12/10 Python
canvas实现飞机打怪兽射击小游戏的示例代码
2018/07/09 HTML / CSS
Canvas引入跨域的图片导致toDataURL()报错的问题的解决
2018/09/19 HTML / CSS
Canvas实现贝赛尔曲线轨迹动画的示例代码
2019/04/25 HTML / CSS
美国在线鲜花速递:ProFlowers
2017/01/05 全球购物
2015年小学数学教师个人工作总结
2015/05/25 职场文书
煤矿隐患排查制度
2015/08/05 职场文书
人生感悟经典句子
2019/08/20 职场文书
http通过StreamingHttpResponse完成连续的数据传输长链接方式
2022/02/12 Python
MYSQL常用函数介绍
2022/05/05 MySQL