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 相关文章推荐
flash 得到自身url参数的代码
Nov 15 Javascript
解决html按钮切换绑定不同函数后点击时执行多次函数问题
May 14 Javascript
AMD异步模块定义介绍和Require.js中使用jQuery及jQuery插件的方法
Jun 06 Javascript
IE6 hack for js 集锦
Sep 23 Javascript
Javascript的闭包详解
Dec 26 Javascript
利用BootStrap弹出二级对话框的简单实现方法
Sep 21 Javascript
JS 在数组指定位置插入/删除数据的方法
Jan 12 Javascript
javascript中json对象json数组json字符串互转及取值方法
Apr 19 Javascript
js实现水平滚动菜单导航
Jul 21 Javascript
javascript将list转换成树状结构的实例
Sep 08 Javascript
vue2.0之多页面的开发的示例
Jan 30 Javascript
详解使用jest对vue项目进行单元测试
Sep 07 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
DSP接收机前端设想
2021/03/02 无线电
zend optimizer在wamp的基础上安装图文教程
2013/10/26 PHP
php中json_encode处理gbk与gb2312中文乱码问题的解决方法
2014/07/10 PHP
php简单smarty入门程序实例
2015/06/11 PHP
PHP使用数组依次替换字符串中匹配项
2016/01/08 PHP
PHP 文件上传后端处理实用技巧方法
2017/01/06 PHP
JQuery 常用方法和事件详细介绍
2013/04/18 Javascript
详解JS 比较两个Json对象的值是否相等的实例
2013/11/20 Javascript
Javascript解析URL方法详解
2014/12/05 Javascript
JS实现的N多简单无缝滚动代码(包含图文效果)
2015/11/06 Javascript
jQuery实现div随意拖动的实例代码(通用代码)
2016/01/28 Javascript
Javascript生成全局唯一标识符(GUID,UUID)的方法
2016/02/27 Javascript
浅析如何利用JavaScript进行语音识别
2016/10/27 Javascript
Highcharts+NodeJS搭建数据可视化平台示例
2017/01/01 NodeJs
JavaScript验证知识整理
2017/03/24 Javascript
vue实现app页面切换动画效果实例
2017/05/23 Javascript
jsTree事件和交互以及插件plugins详解
2017/08/29 Javascript
jQuery插件实现弹性运动完整示例
2018/07/07 jQuery
让webpack+vue-cil项目不再自动打开浏览器的方法
2018/09/27 Javascript
如何在微信小程序中存setStorage
2019/12/13 Javascript
python pygame实现2048游戏
2018/11/20 Python
对python mayavi三维绘图的实现详解
2019/01/08 Python
django 配置阿里云OSS存储media文件的例子
2019/08/20 Python
Python代理IP爬虫的新手使用教程
2019/09/05 Python
pytorch对梯度进行可视化进行梯度检查教程
2020/02/04 Python
利用python生成照片墙的示例代码
2020/04/09 Python
协程Python 中实现多任务耗资源最小的方式
2020/10/19 Python
css3 给背景设置渐变色的方法
2019/09/12 HTML / CSS
牵手50台湾:专为黄金岁月的单身人士而设的交友网站
2021/02/18 全球购物
大三学生入党思想汇报
2014/01/02 职场文书
个人评语大全
2014/05/04 职场文书
电子商务系毕业生自荐信
2014/05/29 职场文书
交通运输局四风问题对照检查材料思想汇报
2014/10/09 职场文书
2014年骨干教师工作总结
2014/12/19 职场文书
儿子满月酒致辞
2015/07/29 职场文书
2016国培研修心得体会
2016/01/08 职场文书