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 相关文章推荐
用js做一个小游戏平台 (一)
Dec 29 Javascript
JS字符串函数扩展代码
Sep 13 Javascript
javascript淡入淡出效果的实现思路
Mar 31 Javascript
使用jQuery不判断浏览器高度解决iframe自适应高度问题
Dec 16 Javascript
js制作简易年历完整实例
Jan 28 Javascript
js实现将选中内容分享到新浪或腾讯微博
Dec 16 Javascript
使用Javascript监控前端相关数据的代码
Oct 27 Javascript
JavaScript监听手机物理返回键的两种解决方法
Aug 14 Javascript
jQuery 同时获取多个标签的指定内容并储存为数组
Nov 20 jQuery
如何实现echarts markline标签名显示自己想要的
Jul 20 Javascript
JavaScript浅层克隆与深度克隆示例详解
Sep 01 Javascript
vue中配置scss全局变量的步骤
Dec 28 Vue.js
关于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 使用post,get的一种简洁方式
2010/04/25 PHP
按上下级层次关系输出内容的PHP代码
2010/07/17 PHP
PHP禁止页面缓存的代码
2011/10/23 PHP
整理的一些实用WordPress后台MySQL操作命令
2013/01/07 PHP
php基于mcrypt的加密解密实例
2014/10/27 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
2015/12/10 PHP
thinkphp实现163、QQ邮箱收发邮件的方法
2015/12/18 PHP
PHP实现创建微信自定义菜单的方法示例
2017/07/14 PHP
百度 popup.js 完美修正版非常的不错 脚本之家推荐
2009/04/17 Javascript
Javascript中的var_dump函数实现代码
2009/09/07 Javascript
SyntaxHighlighter语法高亮插件使用说明
2011/08/14 Javascript
Jquery中给animation加更多的运作效果实例
2013/09/05 Javascript
JS之Date对象和获取系统当前时间详解
2014/01/13 Javascript
JS阻止用户多次提交示例代码
2014/03/26 Javascript
一个简单的jQuery计算器实现了连续计算功能
2014/07/21 Javascript
AngularJS实现数据列表的增加、删除和上移下移等功能实例
2016/09/05 Javascript
JS实现控制图片显示大小的方法【图片等比例缩放功能】
2017/02/18 Javascript
js自定义Tab选项卡效果
2017/06/05 Javascript
详谈js原型继承的一些问题
2017/09/06 Javascript
基于vue监听滚动事件实现锚点链接平滑滚动的方法
2018/01/17 Javascript
优化Vue项目编译文件大小的方法步骤
2019/05/27 Javascript
解决layer弹出层msg的文字不显示的问题
2019/09/11 Javascript
vue项目实现图片上传功能
2019/12/23 Javascript
vue swipeCell滑动单元格(仿微信)的实现示例
2020/09/14 Javascript
python中requests模块的使用方法
2015/04/08 Python
Python编程中运用闭包时所需要注意的一些地方
2015/05/02 Python
使用Python编写简单的端口扫描器的实例分享
2015/12/18 Python
Python中的pathlib.Path为什么不继承str详解
2019/06/23 Python
Python-Tkinter Text输入内容在界面显示的实例
2019/07/12 Python
HTML5 canvas绘制的玫瑰花效果
2014/05/29 HTML / CSS
2014年学习雷锋活动总结
2014/03/01 职场文书
购房意向书范本
2014/04/01 职场文书
卖车协议书
2014/04/21 职场文书
python生成随机数、随机字符、随机字符串
2021/04/06 Python
python turtle绘图
2022/05/04 Python
python playwrigh框架入门安装使用
2022/07/23 Python