微信小程序封装请求方法wx.request(OBJECT)
2018-01-24 20:51
996 查看
小程序写完也一段时间了,最近分享下装逼的技能吧,封装请求方法,不但高大上,而且使用简单。先说说小程序自带的请求吧!
上面的代码段是维信提供的方法,下面我就说说封装的方法吧
这里我要补充下,上面的url就是我把所有的借口都写在一个js里了,所以就是server+url,然后就域名,这个域名分测试域名和正式域名,这样开发的时候就可以用测试等一切好了没问题了就可以用正式的,每次只需要注释就可以了。
这个是截图,下面的是api接口
接口是对象,建和值,然后就是应用
鄙人拙见,如有出入,劳烦指点,谢谢
wx.request(OBJECT)
参数:参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
url | String | 是 | 开发者服务器接口地址 | |
data | Object/String/ArrayBuffer | 否 | 请求的参数 | |
header | Object | 否 | 设置请求的 header,header 中不能设置 Referer。 | |
method | String | 否 | GET | 有效值:OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT |
dataType | String | 否 | json | 如果设为json,会尝试对返回的数据做一次 JSON.parse |
responseType | String | 否 | text | 设置响应的数据类型。合法值:text、arraybuffer |
success | Function | 否 | 收到开发者服务成功返回的回调函数 | |
fail | Function | 否 | 接口调用失败的回调函数 | |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
wx.request({ url: 'xxxx.php', data: { x: '' , y: '' }, method:"POST", header: { 'content-type': 'application/json' }, success: function(res) { console.log(res.data) } })
上面的代码段是维信提供的方法,下面我就说说封装的方法吧
// 公用请求方法 netRequest: function ({url, data, success, method = "POST"}) { xxx let server = 'https://xxx.xxxxxxxx.cn';//正式域名 // let server = 'http://dxxx.xxxxxxxxxx.cn';//测试域名 // 本地取存储的 sessionID let sessionId = wx.getStorageSync('sid'), that = this; if (sessionId != "" && sessionId != null) { var header = { 'content-type': 'application/x-www-form-urlencoded', 'Cookie': 'sid=' + sessionId }; } else { var header = { 'content-type': 'application/x-www-form-urlencoded' }; } wx.request({ url: server + url, method: method, data: data, header: header, success: (res) => { if (sessionId == "" || sessionId == null) { wx.setStorageSync('sid', res.data.info.session_id) // 如果本地没有就说明第一次请求 把返回的 sessionId 存入本地 } let data = res.data; res['statusCode'] === 200 ? success(data) : that.fail(); }, fail: function (res) { wx.hideLoading(); wx.showToast({ title : '请求超时', icon : 'loading', duration : 2000 }) }, complete:function(){ wx.hideLoading(); } }); }
这里我要补充下,上面的url就是我把所有的借口都写在一个js里了,所以就是server+url,然后就域名,这个域名分测试域名和正式域名,这样开发的时候就可以用测试等一切好了没问题了就可以用正式的,每次只需要注释就可以了。
这个是截图,下面的是api接口
接口是对象,建和值,然后就是应用
鄙人拙见,如有出入,劳烦指点,谢谢
相关文章推荐
- 微信小程序的网络设置,及网络请求:wx.request(OBJECT)
- 微信小程序 wx.request(OBJECT)发起请求详解
- 微信小程序数据请求方法wx.request
- 微信小程序的网络设置,及网络请求:wx.request(OBJECT)
- 微信小程序 wx.request方法的异步封装实例详解
- 微信小程序网络请求 wx.request() ,data内参数后台获取不到
- 微信小程序- wx.request请求不到数据
- 小程序不支持wx.request同步请求解决方法
- 微信小程序把玩(三十)wx.request(object) API
- 微信小程序--后台交互/wx.request({})方法/渲染页面方法 解析
- 微信小程序网络请求wx.request请求
- 微信小程序网络请求wx.request请求
- 微信小程序的ajax数据请求wx.request
- 微信小程序网络请求wx.request详解及实例
- 微信小程序wx.request请求回来的数据没有及时显示到页面上
- 微信小程序的ajax数据请求wx.request
- 微信小程序wx.request请求用POST后台得不到传递数据
- 微信小程序 wx.request wepy 简单封装
- 微信小程序wx.request请求服务器json数据并渲染到页面
- 微信小程序把玩(三十)wx.request(object) API