码迷,mamicode.com
首页 > 微信 > 详细

微信小程序开发(request请求后台获取不到data)

时间:2016-12-02 18:23:03      阅读:774      评论:0      收藏:0      [点我收藏+]

标签:post请求   turn   com   .com   javah   而不是   export   api   封装   

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, 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)
}

有点鬼畜还是第一版目前还是能用的- -

微信小程序开发(request请求后台获取不到data)

标签:post请求   turn   com   .com   javah   而不是   export   api   封装   

原文地址:http://www.cnblogs.com/jcscript/p/6126561.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!