全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

关于前后端json数据的发送与接收详解

前言

最近因为笔者后台使用的是flask框架接收和前端使用的是原生的JavaScript和jQuery的ajax发送,能力有限,在此仅写下我开发项目过程中所得,分享出来供大家参考学习,下面话不多说,跟着小编来一起看看详细的介绍:

一、flask中的json数据接收

1、利用flask的request.form.get()方法

Python后台部分代码

from flask import Flask
from flask import jsonify
from flask import request
import json
...

# 登录
@app.route("/flask/login", methods=['POST'])
def login():
 data_ = request.form.get('data')
 data = json.loads(data)
 username = data['username']
 password = data['password']
 rem = False
 if data['remember']:
  rem = True
 return jsonify({"login": Login.login(username, password, rem)}) # 返回布尔值

2、 利用flask的request.get_data()方法

Python后台代码

from flask import Flask
from flask import jsonify
from flask import request
import json
...

# 登录
@app.route("/flask/login", methods=['POST'])
def login():
 data = request.get_data()
 data = json.loads(data)
 username = data['username']
 password = data['password']
 rem = False
 if data['remember']:
  rem = True
 return jsonify({"login": Login.login(username, password, rem)}) # 返回布尔值

3、利用flask的request.get_json()方法

Python后台代码

from flask import Flask
from flask import jsonify
from flask import request

...

# 登录
@app.route("/flask/login", methods=['POST'])
def login():
 data = request.get_json()
 username = data['username']
 password = data['password']
 rem = False
 if data['remember']:
  rem = True
 return jsonify({"login": Login.login(username, password, rem)}) # 返回布尔值

二、前端发送json数据

1、原生XMLHttp发送

function login() {
 var username =document.getElementById("username").value;
 var password = document.getElementById("password").value;
 var remember =document.getElementById("remember").checked;
 var xmlhttp;
 if (window.XMLHttpRequest)
 {
  // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
  xmlhttp=new XMLHttpRequest();
 }
 else
 {
  // IE6, IE5 浏览器执行代码
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
 xmlhttp.onreadystatechange=function()
 {
  if (xmlhttp.readyState===4 && xmlhttp.status===200)
  {
   ...
  }
 };

 xmlhttp.open("POST","/flask/login",true);
 xmlhttp.setRequestHeader("Content-type","application/json");
 // 后面这两部很重要,我看网上很多都是使用xmlhttp.send("username="+username+"&password="+"),这样接收还要解析一番感觉还是直接发送以下格式的好些
 var data = {
  "username": username
  "password": password
  "remember": remember
 };
 var data_json = JSON.stringify(data);
 xmlhttp.send(data_json);
}

附:json数据解析

 var text = xmlhttp.responseText;
 // 通过eval() 方法将json格式的字符串转化为js对象,并进行解析获取内容
 var result = eval("("+text+")");
 if (result) {
    
  } else {
    alert("请输入正确的用户名和密码");
   }

2、ajax发送

 $(document).ready(function () {
 var data = {
 "username": "adamin",
 "password": "123456789",
 "remember": true
 }
 $.ajax({
  url: "/flask/login",
  type: "POST",
  data: data,
  success: function () {
   
  }
 })
 })

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持


# 前后端数据交互  # json  # 后端接收json数据  # json前后端数据传输  # JAVA实现JSON后端向前端传递数据  # jQuery Ajax前后端使用JSON进行交互示例  # java web SpringMVC后端传json数据到前端页面实例代码  # 的是  # 布尔值  # 都是  # 我看  # 在此  # 请输入  # 很重要  # 这篇文章  # 谢谢大家  # 多说  # 转化为  # 两部  # 小编  # 开发项目  # 过程中  # 直接发送  # 网上  # 有疑问  # def  # POST 


相关文章: 免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  魔方云NAT建站如何实现端口转发?  建站之星3.0如何解决常见操作问题?  山东云建站价格为何差异显著?  网站好制作吗知乎,网站开发好学吗?有什么技巧?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  学校建站服务器如何选型才能满足性能需求?  黑客入侵网站服务器的常见手法有哪些?  家具网站制作软件,家具厂怎么跑业务?  建站DNS解析失败?如何正确配置域名服务器?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  如何自定义建站之星模板颜色并下载新样式?  测试制作网站有哪些,测试性取向的权威测试或者网站?  建站之星代理如何获取技术支持?  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  建站之星CMS建站配置指南:模板选择与SEO优化技巧  宝塔建站助手安装配置与建站模板使用全流程解析  制作国外网站的软件,国外有哪些比较优质的网站推荐?  企业网站制作公司网页,推荐几家专业的天津网站制作公司?  如何确保西部建站助手FTP传输的安全性?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?  官网网站制作腾讯审核要多久,联想路由器newifi官网  建站之星客服服务时间及联系方式如何?  如何选择高效便捷的WAP商城建站系统?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  制作宣传网站的软件,小红书可以宣传网站吗?  建站ABC备案流程中有哪些关键注意事项?  建站之星后台密码遗忘?如何快速找回?  宝塔新建站点报错如何解决?  建站上市公司网站建设方案与SEO优化服务定制指南  建站之星安装路径如何正确选择及配置?  昆明网站制作哪家好,昆明公租房申请网上登录入口?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  建站主机选哪种环境更利于SEO优化?  全景视频制作网站有哪些,全景图怎么做成网页?  建站主机选择指南:服务器配置与SEO优化实战技巧  招商网站制作流程,网站招商广告语?  如何在自有机房高效搭建专业网站?  宝塔建站后网页无法访问如何解决?  如何快速搭建高效服务器建站系统?  网站制作员失业,怎样查看自己网站的注册者?  如何在Windows虚拟主机上快速搭建网站?  为什么Go需要go mod文件_Go go mod文件作用说明  如何快速选择适合个人网站的云服务器配置?  活动邀请函制作网站有哪些,活动邀请函文案?  如何在IIS中新建站点并解决端口绑定冲突? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。