Flask中获取小程序Request数据的两种方法


Posted in Javascript onMay 12, 2017

Flask中获取小程序Request数据的两种方法

作为后端?哦杂谇岸巳肥祷淠?缟睿?S中的类型Object竟然不能直接通过POST传入到后台Flask中,您会发现获取的是[object Object],这货在Flask中只是个Str,哈哈...

于是,开始寻求解决方案:

方案一,通过GET或者POST传参,将Object转换为Str请求数据:

1.在util.js中定义一个JS函数:

function json2Form(json) {
 var str = [];
 for (var p in json) {
  str.push(encodeURIComponent(p) + "=" + encodeURIComponent(json[p]));
 }
 return str.join("&");
}
module.exports = {
 json2Form: json2Form,
}

2.在相应的页面加载该函数,并进行调用:

var Util = require('../../../utils/util.js')
wx.request({
  url: App.Config.post_Data,//自己的服务接口地址
  method: 'POST',
  header: {
    'content-type': 'application/x-www-form-urlencoded'
},
    data: { postdata:Util.json2Form(params)},//注意这里哈!
  success: function (data) {console.log('已经提交数据到数据库')}
})

当然,这里也可以也可以用你的URl+Util.json2Form(params),然后用GET请求。

3.Flask后台获取数据:

postdata = request.values.get('postdata')

方案二,通过POST传参,将Object转换为Json()格式:

1.小程序直接将请求数据转换为Json格式:

wx.request({
  url: App.Config.post_Data,
  method: 'POST',
  header: {
    'content-type': 'application/x-www-form-urlencoded'
},
    data: { postdata: JSON.stringify(params) },//注意这里哈!
  success: function (data) {console.log('已经提交数据到数据库')}
})

2.Flask后台处理:

postdata = request.values.get('postdata')
print (json.loads(postdata)) # 注意这里哈
postdata=json.loads(postdata)# 注意这里哈,变回DICT格式,亲切ing

好啦,以后能用POST就用它获取数据了,继续Flask开发小程序的进程!!!

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
二级域名转向类
Nov 09 Javascript
js资料prototype 属性
Mar 13 Javascript
javascript屏蔽右键代码
May 15 Javascript
解决jquery版本冲突的有效方法
Sep 02 Javascript
概述一个页面从输入URL到页面加载完的过程
Dec 16 Javascript
Node.js连接mongodb实例代码
Jun 06 Javascript
微信小程序 监听手势滑动切换页面实例详解
Jun 15 Javascript
Vuex利用state保存新闻数据实例
Jun 28 Javascript
浅谈vue首屏加载优化
Jun 28 Javascript
springMvc 前端用json的方式向后台传递对象数组方法
Aug 07 Javascript
vuex2中使用mapGetters/mapActions报错的解决方法
Oct 20 Javascript
React和Vue中监听变量变化的方法
Nov 14 Javascript
关于bootstrap日期转化,bootstrap-editable的简单使用,bootstrap-fileinput的使用详解
May 12 #Javascript
微信小程序 支付功能实现PHP实例详解
May 12 #Javascript
深入理解JavaScript继承的多种方式和优缺点
May 12 #Javascript
JS实现图片预加载之无序预加载功能代码
May 12 #Javascript
详解React开发中使用require.ensure()按需加载ES6组件
May 12 #Javascript
vue学习笔记之指令v-text && v-html && v-bind详解
May 12 #Javascript
JS常用正则表达式总结【经典】
May 12 #Javascript
You might like
十天学会php之第一天
2006/10/09 PHP
php 上传功能实例代码
2010/04/13 PHP
php数字每三位加逗号的功能函数
2015/10/22 PHP
PHP编写登录验证码功能 附调用方法
2016/05/19 PHP
win7 wamp 64位 php环境开启curl服务遇到的问题及解决方法
2018/09/16 PHP
PHP获取访问设备信息的方法示例
2019/02/20 PHP
jquery easyui的tabs使用时的问题
2010/03/23 Javascript
js日期联动示例
2014/05/02 Javascript
学习javascript文件加载优化
2016/02/19 Javascript
json对象与数组以及转换成js对象的简单实现方法
2016/06/24 Javascript
用jQuery的AJax实现异步访问、异步加载
2016/11/02 Javascript
JavaScript用JSONP跨域请求数据实例详解
2017/01/06 Javascript
bootstrap PrintThis打印插件使用详解
2017/02/20 Javascript
ES6新特性之模块Module用法详解
2017/04/01 Javascript
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
2017/06/09 Javascript
深入浅析JSONAPI在PHP中的应用
2017/12/24 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
vue动态子组件的两种实现方式
2019/09/01 Javascript
ant-design-vue 快速避坑指南(推荐)
2020/01/21 Javascript
three.js 将图片马赛克化的示例代码
2020/07/31 Javascript
逐行分析鸿蒙系统的 JavaScript 框架(推荐)
2020/09/17 Javascript
使用Python脚本将绝对url替换为相对url的教程
2015/04/24 Python
在Python下进行UDP网络编程的教程
2015/04/29 Python
python负载均衡的简单实现方法
2018/02/04 Python
简单了解Python多态与属性运行原理
2020/06/15 Python
Omio法国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/13 全球购物
《临死前的严监生》教学反思
2014/02/13 职场文书
会计电算化应届生自荐信
2014/02/25 职场文书
商学院大学生求职的自我评价
2014/03/12 职场文书
2014年党员自我评议(5篇)
2014/09/12 职场文书
群众路线领导干部个人对照检查材料(集锦)
2014/09/23 职场文书
给领导的感谢信范文
2015/01/23 职场文书
求职信如何撰写?
2019/05/22 职场文书
销区经理年终述职报告模板
2019/11/28 职场文书
Java数组详细介绍及相关工具类
2022/04/14 Java/Android
Go gorilla/sessions库安装使用
2022/08/14 Golang