server.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. import _ from 'lodash'
  2. import * as util from '@/util/util'
  3. import * as api from '@/service/api'
  4. import store from '@/store/index.js'
  5. const checkError = (code, errorMsg, isNoError, errorCode,data,checkPaying) => {
  6. let isError = false
  7. let str = errorMsg || ''
  8. switch (code) {
  9. case 200:
  10. isError = false
  11. break
  12. case 201:
  13. isError = false
  14. break
  15. case 500:
  16. isError = false
  17. str = '服务器错误'
  18. break
  19. case 401:
  20. isError = false
  21. str = '登录信息过期,请重新登录'
  22. break
  23. default:
  24. isError = true
  25. str = errorMsg
  26. }
  27. if(errorCode != 200){
  28. isError = true
  29. }
  30. if(errorCode == 401){
  31. isError = false
  32. str = '登录信息过期,请重新登录'
  33. uni.showModal({
  34. content: str,
  35. confirmColor: '#FF7400',
  36. showCancel: false,
  37. success: (res) => {
  38. util.removeStorageSync('userInfo')
  39. util.removeStorageSync('userToken')
  40. store.commit('setUserToken',null)
  41. store.commit('setIsLogin',false)
  42. uni.reLaunch({
  43. url:'/pages/login/login'
  44. })
  45. }
  46. })
  47. }
  48. if(checkPaying && (errorCode == 202 || errorCode == 203 || errorCode == 204) ){
  49. isError = false
  50. uni.showModal({
  51. title: '提示',
  52. content: data.message,
  53. cancelText: "不想要了", // 取消按钮的文字
  54. confirmText: "去支付", // 确认按钮文字
  55. showCancel: true, // 是否显示取消按钮,默认为 true
  56. confirmColor: '#f55850',
  57. cancelColor: '#39B54A',
  58. success: (res) => {
  59. if (res.confirm) {
  60. uni.$emit('nopayOrderConfirm',data)
  61. } else {
  62. uni.$emit('nopayOrderCancel',data)
  63. }
  64. }
  65. })
  66. }
  67. if (!isNoError && isError) {
  68. uni.showModal({
  69. content: str,
  70. confirmColor: '#FF7400',
  71. showCancel: false
  72. })
  73. }
  74. return isError ? {
  75. code: errorCode,
  76. errorMsg: str
  77. } : false
  78. }
  79. const setFixedHeader = (params) => {
  80. const userToken = util.getStorageSync('userToken')
  81. if (userToken) {
  82. params.data['token'] = `${userToken}`
  83. }
  84. myConsole(params.header)
  85. // params.header['content-type'] = 'application/json'
  86. return params
  87. }
  88. const requist = (data) => {
  89. return new Promise((resolve, reject) => {
  90. let isNoError = data.data && data.data.isNoError
  91. let params = {
  92. data: {
  93. ...data.data
  94. },
  95. header: {}
  96. }
  97. params = setFixedHeader(params)
  98. delete params.data.isNoError
  99. if (!params.data.hideLoading) {
  100. store.commit('setShowLoading',true)
  101. }
  102. myConsole(`url:${data.url}`);
  103. myConsole(params);
  104. uni.request({
  105. ...data,
  106. ...params,
  107. success(res) {
  108. myConsole(`url:${data.url}`);
  109. myConsole(res);
  110. uni.stopPullDownRefresh()
  111. const {
  112. statusCode
  113. } = res
  114. const d = res.data
  115. const error_message = d.msg
  116. // d && ((d._error && d._error.message) || d.message || d)
  117. // const success = d.code ==
  118. const errorCode = d.code
  119. const check = checkError(statusCode, error_message, isNoError, errorCode,res.data,params.data.checkPaying)
  120. if (check) {
  121. return reject(check)
  122. }
  123. return resolve(res.data)
  124. },
  125. fail(error) {
  126. myConsole(
  127. `error:
  128. ${{
  129. ...data,
  130. ...params
  131. }}
  132. ,
  133. ${error},`
  134. )
  135. uni.showModal({
  136. content: '网络异常',
  137. confirmColor: '#FF7400',
  138. showCancel: false
  139. })
  140. uni.stopPullDownRefresh()
  141. return reject(error)
  142. },
  143. complete() {
  144. if (!params.data.hideLoading) {
  145. store.commit('setShowLoading',false)
  146. }
  147. }
  148. })
  149. })
  150. }
  151. export const apiGET = (url, data) => {
  152. return requist({
  153. method: 'GET',
  154. url,
  155. data
  156. })
  157. }
  158. export const apiPOST = (url, data) => {
  159. return requist({
  160. method: 'POST',
  161. url,
  162. data
  163. })
  164. }
  165. export const apiDELETE = (url, data) => {
  166. return requist({
  167. method: 'DELETE',
  168. url,
  169. data
  170. })
  171. }
  172. export const apiPUT = (url, data) => {
  173. return requist({
  174. method: 'PUT',
  175. url,
  176. data
  177. })
  178. }
  179. const myConsole = (obj) => {
  180. console.log(obj)
  181. }