1微信的request的post請求後臺獲取不到data(當初這個問題糾結了很久很久),緣由是post傳遞的data是json格式而不是key,value的格式,因此獲取不到相應的data就是post請求應爲表單模式的data,微信小程序提供的datajson格式徹底獲取不到。java
解決方法:json
1.改變header小程序
header: {
'Content-Type': 'application/json;charset=UTF-8;'
},微信小程序
2.query的格式傳遞post請求就能夠了,不過這個有點。。你懂的,我用了這種方放對request進行了二次封裝,代碼以下:api
/** ***對微信小程序的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, 1231231231) 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) }
有點鬼畜仍是初版目前仍是能用的- -微信