http.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. const isTest = true;
  2. const baseUrl = isTest ? 'http://app.rt/api/mini/' : 'http://t18.9026.com/api/mini/';
  3. const http = (data) => {
  4. var data = Object.assign({}, {
  5. url: '',
  6. method: 'POST',
  7. data: {},
  8. success: null,
  9. error: null,
  10. loadTitle: '加载中',
  11. showLoading: true
  12. }, data)
  13. if (data.showLoading) {
  14. wx.showLoading({
  15. title: data.loadTitle,
  16. })
  17. }
  18. var userinfo = wx.getStorageSync('sg-userinfo')
  19. var token = userinfo ? userinfo.token : ''
  20. wx.request({
  21. url: baseUrl + data.url,
  22. method: data.method,
  23. data: data.data,
  24. header: {
  25. 'X-Token': token
  26. },
  27. success: function (res) {
  28. if (data.showLoading) wx.hideLoading()
  29. if(res.statusCode != 200) {
  30. wx.showToast({
  31. title: res.data.message,
  32. icon: 'none'
  33. })
  34. return false
  35. }
  36. if (res.data.code != 0) {
  37. wx.showToast({
  38. title: res.data.msg,
  39. icon: 'none'
  40. })
  41. if(res.data.code == -100) {
  42. // wx.navigateTo({
  43. // url: '/pages/login/index',
  44. // })
  45. }
  46. }
  47. typeof data.success === "function" && data.success(res.data)
  48. },
  49. fail: function (res) {
  50. console.log(res)
  51. typeof data.error === "function" && data.error(res.data)
  52. }
  53. })
  54. }
  55. module.exports = http