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 相关文章推荐
Cookie 注入是怎样产生的
Apr 08 Javascript
jquery1.4后 jqDrag 拖动 不可用
Feb 06 Javascript
(跨浏览器基础事件/浏览器检测/判断浏览器)经验代码分享
Jan 24 Javascript
JS判断字符串包含的方法
May 05 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
Aug 04 Javascript
关于javascript的一些知识以及循环详解
Sep 12 Javascript
基于substring()和substr()的使用以及区别(实例讲解)
Dec 28 Javascript
express默认日志组件morgan的方法
Apr 05 Javascript
浅谈Webpack 是如何加载模块的
May 24 Javascript
Vue 前端实现登陆拦截及axios 拦截器的使用
Jul 17 Javascript
vue通过过滤器实现数据格式化
Jul 20 Javascript
一道JS算法面试题——冒泡、选择排序
Apr 21 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和MySql中计算时间差的方法详解
2015/03/27 PHP
Yii框架用户登录session丢失问题解决方法
2017/01/07 PHP
PHP+Ajax实现的检测用户名功能简单示例
2019/02/12 PHP
关于laravel 日志写入失败问题汇总
2019/10/17 PHP
php设计模式之策略模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
Mac系统下搭建Nginx+php-fpm实例讲解
2020/12/15 PHP
JavaScript实现Sleep函数的代码
2007/03/04 Javascript
JavaScript获取指定元素位置的方法
2015/04/08 Javascript
详解JavaScript的变量和数据类型
2015/11/27 Javascript
JavaScript与jQuery实现的闪烁输入效果
2016/02/18 Javascript
在Html中使用Requirejs进行模块化开发实例详解
2016/04/15 Javascript
jqGrid 学习笔记整理——进阶篇(一 )
2016/04/17 Javascript
jQuery 获取页面li数组并删除不在数组中的key
2016/08/02 Javascript
简述Angular 5 快速入门
2017/11/04 Javascript
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
2018/04/27 Javascript
Vue兼容ie9的问题全面解决方案
2018/06/19 Javascript
Vue 实现拖动滑块验证功能(只有css+js没有后台验证步骤)
2018/08/24 Javascript
JavaScript this绑定过程深入详解
2018/12/07 Javascript
js前端面试之同步与异步问题详解
2019/04/03 Javascript
JS面向对象编程基础篇(一) 对象和构造函数实例详解
2020/03/03 Javascript
谈谈JavaScript中的垃圾回收机制
2020/09/17 Javascript
python 生成不重复的随机数的代码
2011/05/15 Python
flask使用session保存登录状态及拦截未登录请求代码
2018/01/19 Python
python石头剪刀布小游戏(三局两胜制)
2021/01/20 Python
python函数修饰符@的使用方法解析
2019/09/02 Python
PyTorch 中的傅里叶卷积实现示例
2020/12/11 Python
Gina Bacconi官网:吉娜贝康尼连衣裙和礼服
2018/04/24 全球购物
Myprotein比利时官方网站:欧洲第一运动营养品牌
2020/10/04 全球购物
大学团支书的自我评价分享
2013/12/14 职场文书
期末学生评语大全
2014/04/24 职场文书
课例研修方案
2014/05/31 职场文书
大学生实习证明范文(5篇)
2014/09/18 职场文书
欢迎词怎么写
2015/01/23 职场文书
python批量更改目录名/文件名的方法
2021/04/18 Python
低门槛开发iOS、Android、小程序应用的前端框架详解
2021/10/16 Javascript
使用Python开发贪吃蛇游戏 SnakeGame
2022/04/30 Python