微信小程序开发(request请求后台获取不到data)
1微信的request的post请求后台获取不到data(当初这个问题纠结了好久好久),原因是post传递的data是json格式而不是key,value的格式,所以获取不到相应的data就是post请求应为表单模式的data,微信小程序提供的datajson格式完全获取不到。
解决方法:
1.改变header
header: {
'Content-Type': 'application/json;charset=UTF-8;'
},
2.query的格式传递post请求就可以了,不过这个有点。。你懂的,我用了这种方放对request进行了二次封装,代码如下:
/**
***对微信小程序的request进行二次封装
***注:兼容java接口的form请求
**/
/**
***create by jianchep 2016/11/26
**/
var config = require('../config.js')
module.exports = function (obj) {
if (!obj.url) {
console.warn('请输入url接口')
return
}
let url = config.javaHost + obj.url + '?format=json'
let data = obj.data || {}
let formData = obj.formData || {}
let formDataString = ''
for(var key in formData){
formDataString += '&' + key + '=' + formData[key]
}
// console.log('formDataString--->>', formDataString)
if (formDataString) {
url += formDataString
}
console.log(url, )
let requestList = {
url: url,
data: data,
header: {
'Content-Type': 'application/json'
},
success: function(res){
if (obj.success) {
obj.success(res)
} else {
let str = '\"' + obj.url + '\"接口请求成功,请用success回调函数来得到返回值'
console.warn(str)
}
},
fail: function(res) {
if (obj.fail) {
obj.fail(res)
} else {
let str = '\"' + obj.url + '\"接口请失败功,请用fail回调函数来得到返回值'
console.warn(str)
}
},
complete: function (res) {
if (obj.complete) {
obj.complete(res)
}
}
}
if (obj.method) {
requestList.method = obj.method.toUpperCase()
}
// console.log('api----->>', requestList)
wx.request(requestList)
}
有点鬼畜还是第一版目前还是能用的- -
微信小程序开发(request请求后台获取不到data)的更多相关文章
- 监控微信小程序wx.request请求失败
在微信小程序里,与后台服务器交互的主要接口函数是wx.request(),用于发起 HTTPS 网络请求.其重要性不言而喻.然而,却经常遇到请求失败的问题,笔者特意谷歌"wx.request ...
- 关于微信小程序的Request请求错误处理
在学微信小程序的request请求的时候,一开始报“不在以下合法域名列表中,请参考文”的错误,后来又莫名其妙的报“400 Bad Request”错误,经过半天的研究,终于搞定了,把遇到的错误给大家分 ...
- 微信小程序开发:http请求
在微信小程序进行网络通信,只能和指定的域名进行通信,微信小程序包括四种类型的网络请求. 普通HTTPS请求(wx.request) 上传文件(wx.uploadFile) 下载文件(wx.downlo ...
- [转]微信小程序开发:http请求
本文转自:http://www.cnblogs.com/dragondean/p/5921079.html 在微信小程序进行网络通信,只能和指定的域名进行通信,微信小程序包括四种类型的网络请求. 普通 ...
- 微信小程序开发——点击按钮获取用户授权没反应或反应很慢的解决方法
异常描述: 点击按钮获取用户手机号码,有的时候会出现点击无反应或很久之后才弹出用户授权获取手机号码的弹窗,这种情况下,也会出现点击穿透的问题(详见:微信小程序开发——连续快速点击按钮调用小程序api返 ...
- 微信小程序wx.request请求用POST后台得不到传递数据
微信小程序的wx.request请求,method设为POST并向后台传递数据,但从后台返回的信息来看后台并没有获得传递的数据 wx.request({ url: 'url' ...
- 微信小程序开发之如何哪获取微信小程序的APP ID
微信小程序的开发工具,在新建项目的时候,默认提示填写APP ID,如果不填写AppID 也是可以本地测试和开发的,但是无法通过手机调试,只能在开发工具里查看 如果需要真机调试微信小程序,需要安装微信6 ...
- 微信小程序wx.request请求服务器json数据并渲染到页面
[原文出自]: https://blog.csdn.net/weixin_39927850/article/details/79766259 微信小程序的数据总不能写死吧,肯定是要结合数据库来做数据更 ...
- 【微信小程序开发】之如何获取免费ssl证书【图文步骤】
微信小程序要求所有网络请求都走ssl加密,因此我们开发服务端接口需要配置为https 这篇文章介绍一下如何 在 startssl 申请一个免费的ca证书. 1. 打开网站 https://www.s ...
随机推荐
- mysql监控利器mysqlmtop部署安装
MySQLMTOP是一个由Python+PHP开发的MySQL企业级监控系统.系统由Python实现多进程数据采集和告警,PHP实现WEB展示和管理.最重要是MySQL服务器无需安装任何Agent,只 ...
- bzoj1650
题解: 二分答案 然后贪心 代码: #include<bits/stdc++.h> using namespace std; ; int n,m,l,a[N]; int pd(int x) ...
- ural1469
题解: 从左往右加入每一个点 判断一下和,pre,nxt是否相交 删除得时候也要判断 代码: #pragma GCC optimize(2) #include<cstdio> #inclu ...
- bootstrap的学习总结
1.bootstrap是一个css框架,它提供了很多类,这些类中实现了内外边距,颜色,大小等样式的封装,它还提供了很多常用插件可以直接使用 2.12栅格本质上是将标签的外边距和内边距通过“格子”的思想 ...
- Final阶段第1周/共1周 Scrum立会报告+燃尽图 04
作业要求[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2483] 版本控制:https://git.coding.net/liuyy08 ...
- L242
They provide a means of keeping track of the thousands of journal papers that are published monthly ...
- php 值引用
1.值传递 复制代码 代码如下: <?php function exam($var1){ $var1++: echo "In Exam:" . $var1 . "& ...
- tp5中捕获异常的配置
首选在配置文件中加入配置如下 // 异常处理handle类 留空使用 \think\exception\Handle 'exception_handle' => '\\app\ ...
- HDU 1588 Gauss Fibonacci(矩阵快速幂)
Gauss Fibonacci Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- QLabel 内容长度超过控件本身长度时超出的部分用省略号
void JunEditableLabel::setText(const QString &string) { QFont font("Tahoma"); font.set ...