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脚本实现统计日志文件中的ip访问次数代码分享
Aug 06 Python
零基础写python爬虫之urllib2使用指南
Nov 05 Python
python分析apache访问日志脚本分享
Feb 26 Python
pandas or sql计算前后两行数据间的增值方法
Apr 20 Python
Python面向对象之类的定义与继承用法示例
Jan 14 Python
使用python获取邮箱邮件的设置方法
Sep 20 Python
python3.7 openpyxl 删除指定一列或者一行的代码
Oct 08 Python
利用Python产生加密表和解密表的实现方法
Oct 15 Python
python实现飞船大战
Apr 24 Python
python实现AdaBoost算法的示例
Oct 03 Python
python+opencv实现视频抽帧示例代码
Jun 11 Python
Python matplotlib安装以及实现简单曲线的绘制
Apr 26 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
DC动画很好看?新作烂得令人发指,名叫《红色之子》
2020/04/09 欧美动漫
怎么使 Mysql 数据同步
2006/10/09 PHP
smarty实例教程
2006/11/19 PHP
浅析PHP微信支付通知的处理方式
2014/05/25 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
输入密码检测大写是否锁定js实现代码
2012/12/03 Javascript
javaScript NameSpace 简单说明介绍
2013/07/18 Javascript
如何让DIV可编辑、可拖动示例代码
2013/09/18 Javascript
动态创建script标签实现跨域资源访问的方法介绍
2014/02/28 Javascript
用js将内容复制到剪贴板兼容浏览器
2014/03/18 Javascript
js实现带关闭按钮始终显示在网页最底部工具条的方法
2015/03/02 Javascript
jQuery实现限制textarea文本框输入字符数量的方法
2015/05/28 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
2015/12/02 Javascript
jQuery图片左右滚动代码 有左右按钮实例
2016/06/20 Javascript
微信小程序 视图层(xx.xml)和逻辑层(xx.js)详细介绍
2016/10/13 Javascript
vue开发心得和技巧分享
2016/10/27 Javascript
使用canvas及js简单生成验证码方法
2017/04/02 Javascript
javascript数据结构中栈的应用之符号平衡问题
2017/04/11 Javascript
微信小程序开发搜索功能实现(前端+后端+数据库)
2020/03/04 Javascript
[01:56]《DOTA2》中文配音CG
2013/04/22 DOTA
[01:21]2018DOTA2亚洲邀请赛4.5采访 打DOTA2也能有女朋友?
2018/04/06 DOTA
Python中input和raw_input的一点区别
2014/10/21 Python
通过代码实例展示Python中列表生成式的用法
2015/03/31 Python
python字典多键值及重复键值的使用方法(详解)
2016/10/31 Python
Unicode和Python的中文处理
2017/03/19 Python
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
2018/10/22 Python
python图的深度优先和广度优先算法实例分析
2019/10/26 Python
python快速排序的实现及运行时间比较
2019/11/22 Python
在python中计算ssim的方法(与Matlab结果一致)
2019/12/19 Python
Python object类中的特殊方法代码讲解
2020/03/06 Python
python 三种方法提取pdf中的图片
2021/02/07 Python
教师党性分析材料
2014/02/04 职场文书
四风问题个人剖析材料
2014/10/07 职场文书
索赔员岗位职责
2015/02/15 职场文书
八年级作文之感恩
2019/11/22 职场文书
Mysql表数据比较大情况下修改添加字段的方法实例
2022/06/28 MySQL