美文网首页扣丁学堂Python培训
扣丁学堂Python培训Flask前后端Ajax交互方法示例

扣丁学堂Python培训Flask前后端Ajax交互方法示例

作者: 994d14631d16 | 来源:发表于2018-08-02 10:25 被阅读1次

  今天扣丁学堂Python培训老师给大家介绍一下关于Python高级教程Flask前后端Ajax交互的方法示例,老师这里用的是Ajax,下面我们一起来看一下吧。

​  一、post方法

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

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

  /*前端HTML里:*/

  $.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/",methods=['GET','POST'])

  defjs_post(ip):

  printip

  returnip+"-ip"

  点击按钮后的效果:

  前端定义弹窗数据

  ip在URL里

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

  varip=$(this).parent().prev().prev().prev().prev().text();

  data_tmp={'ip':ip,'text':"successforajax"};//datatosendtoserver.

  $.post('/js_call',data_tmp,function(data){alert(data)});

  后端处理程序:

  @app.route('/js_call',methods=['GET','POST'])

  defjs_call():

  printrequest.values['ip']

  printrequest.values['text']

  #tosendthecommandbyssh:os.system("sshuser@host\'restart(command)\'")

  return'ok!!!!'

  post独立数据发送

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

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

  后端路由接收处理:

  @app.route('/js_get',methods=['GET'])

  defjs_get():

  print"method:"+request.values['method']+"---text:"+request.values['text']

  return"getsuccess!"

  get成功

  数据接收成功

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

  总结:

  在flask框架里,Ajax请求对于后端可以很容易实现,只需在后端Python代码中对ajax路径作出处理即可。

  Ajax的post,get方法均可以向后台发送数据,只是一般用post发数据(做出改变),get请求数据(不改变)。

  以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持扣丁学堂。

相关文章

网友评论

    本文标题:扣丁学堂Python培训Flask前后端Ajax交互方法示例

    本文链接:https://www.haomeiwen.com/subject/ylrjvftx.html