微信小程序 wx.request()
post请求,参数为键值对格式
wx.request({ url: '', method: 'POST', data:'pageSize=1&pageNum=10', //参数为键值对字符串 header: { //设置参数内容类型为x-www-form-urlencoded 'content-type':'application/x-www-form-urlencoded', 'Accept': 'application/json' }, success: function (res) { console.log(res.data) that.setData({ items: res.data }) } })
POST请求,参数为json格式
wx.request({ url: 'test.php', //仅为示例,并非真实的接口地址 data: { //参数为json格式数据 x: '' , y: '', z:12 }, header: { //设置参数内容类型为json 'content-type': 'application/json' }, success: function(res) { console.log(res.data) } })
wx.request() 示例:
Page({ data: { motto: 'wzh ... ' }, //事件处理函数 onLoad: function (options) { var that = this //技能资讯列表 wx.request({ url: 'http://192.168.1.103/yiji/skillList.php', method: 'POST', data:'pageSize=1&pageNum=10', header: { 'content-type':'application/x-www-form-urlencoded', 'Accept': 'application/json' }, success: function (res) { console.log(res.data) //这样赋值现在是不能将数据传走的,必须使用setData()方法 //that.data.items = res.data ; //官方文档指出必须使用setData()方法才能将数据传走 that.setData({ items: res.data }) } }) } })
setData():
Page.prototype.setData() setData 函数用于将数据从逻辑层发送到视图层,同时改变对应的 this.data 的值。 setData() 参数格式 接受一个对象,以 key,value 的形式表示将 this.data 中的 key 对应的值改变成 value。 其中 key 可以非常灵活,以数据路径的形式给出,如 array[2].message,a.b.c.d,并且不需要在 this.data 中预先定义。 注意: 直接修改 this.data 而不调用 this.setData 是无法改变页面的状态的,还会造成数据不一致 单次设置的数据不能超过1024kB,请尽量避免一次设置过多的数据。
欢迎关注微信公众号:lovephp