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 相关文章推荐
新浪的图片新闻效果
Jan 13 Javascript
JS实现向表格中动态添加行的方法
Mar 30 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
Aug 07 Javascript
JS实现双击屏幕滚动效果代码
Oct 28 Javascript
jQuery 跨域访问解决原理案例详解
Jul 09 Javascript
JavaScript中push(),join() 函数 实例详解
Sep 06 Javascript
深入理解JavaScript中的并行处理
Sep 22 Javascript
微信小程序实现左右列表联动
May 19 Javascript
layer.confirm点击第一个按钮关闭弹出框的方法
Sep 09 Javascript
Vue Extends 扩展选项用法完整实例
Sep 17 Javascript
javascript实现贪吃蛇经典游戏
Apr 10 Javascript
对vuex中store和$store的区别说明
Jul 24 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
DC四月将推出百页特刊漫画 纪念小丑诞生80周年
2020/04/09 欧美动漫
php中文字母数字验证码实现代码
2008/04/25 PHP
PHP实现手机归属地查询API接口实现代码
2012/08/27 PHP
使用PHPMailer实现邮件发送代码分享
2014/10/23 PHP
PHP 快速排序算法详解
2014/11/10 PHP
php根据某字段对多维数组进行排序的方法
2015/03/07 PHP
PHP简单实现模拟登陆功能示例
2017/09/15 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
setinterval()与clearInterval()JS函数的调用方法
2015/01/21 Javascript
轻松学习jQuery插件EasyUI EasyUI表单验证
2015/12/01 Javascript
AngularJS使用ngMessages进行表单验证
2015/12/27 Javascript
AngularJS 使用$sce控制代码安全检查
2016/01/05 Javascript
jQuery实现点击查看大图并以弹框的形式居中
2016/08/08 Javascript
Vue通过URL传参如何控制全局console.log的开关详解
2017/12/07 Javascript
vuex 使用文档小结篇
2018/01/11 Javascript
Vue+Webpack完美整合富文本编辑器TinyMce的方法
2018/11/30 Javascript
解决layui数据表格排序图标被超出的表头挤出去的问题
2019/09/19 Javascript
js实现列表向上无限滚动
2020/01/13 Javascript
JS实现打砖块游戏
2020/02/14 Javascript
vue组件讲解(is属性的用法)模板标签替换操作
2020/09/04 Javascript
Python快速从注释生成文档的方法
2016/12/26 Python
Python 2/3下处理cjk编码的zip文件的方法
2019/04/26 Python
python使用sessions模拟登录淘宝的方式
2019/08/16 Python
Python中使用socks5设置全局代理的方法示例
2020/04/15 Python
HTML+CSS3 模仿Windows7 桌面效果
2010/06/17 HTML / CSS
HTML5 移动页面自适应手机屏幕四类方法总结
2017/08/17 HTML / CSS
澳大利亚制造的羊皮靴:Original UGG Boots
2017/11/13 全球购物
美国奢侈品在线团购网站:Gilt City
2017/11/16 全球购物
教师学习培训邀请函
2014/02/04 职场文书
8和9的加减法教学反思
2014/05/01 职场文书
大学毕业生管理学求职信
2014/09/01 职场文书
土木工程专业本科生求职信
2014/10/01 职场文书
机关党员四风问题个人整改措施
2014/10/26 职场文书
优秀团员事迹材料
2014/12/25 职场文书
2015年大学团支部工作总结
2015/05/13 职场文书
党员发展大会主持词
2015/07/03 职场文书