request.js 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. //测试地址
  2. const baseUrl = 'http://api.dms.66km.com.cn/'
  3. //const baseUrl = 'http://192.168.0.124:20187/'
  4. //const baseUrl = 'http://syadmin.66km.com/'
  5. //正式地址-66
  6. //const baseUrl = 'http://apidms.66km.com/'
  7. //欧洲维修
  8. //const baseUrl = 'https://crm.eurorepar.cn/'
  9. import $store from '../store'
  10. const http = (url = '', date = {}, type = 'POST', header = {
  11. }) => {
  12. return new Promise((resolve, reject) => {
  13. header={};
  14. const wxOpenData = uni.getStorageSync("wxOpenData");
  15. //var wxOpenData=$store.state.wxOpenData
  16. if(wxOpenData.loginInfo){
  17. header['accessToken']=wxOpenData.loginInfo.token;
  18. header['uid']=wxOpenData.loginInfo.uid;
  19. }
  20. //console.log($store.state.carInfo)
  21. //header['token']='870347EA782D4A8D90848EEDF6A0B327';
  22. //header['uid']='BD04C2D5-0C07-40C9-9F8A-91BB30EDF2F6';
  23. header['Content-Type']='application/x-www-form-urlencoded';
  24. //console.log(header)
  25. uni.request({
  26. method: type,
  27. url: baseUrl + url,
  28. data: date,
  29. header: header,
  30. dataType: 'json',
  31. }).then((response) => {
  32. /* setTimeout(function() {
  33. uni.hideLoading();
  34. }, 200); */
  35. let [error, res] = response;
  36. if(res.data.code==401||res.data.code==403){
  37. // uni.showToast({
  38. // title: res.data.msg,
  39. // icon:'none',
  40. // duration: 3000,
  41. // });
  42. uni.clearStorageSync()
  43. // uni.navigateTo({
  44. // url:'../login/login'
  45. // })
  46. }else if(res.data.code==409){
  47. // getToken(url,date,type,header)
  48. }
  49. resolve(res.data);
  50. }).catch(error => {
  51. let [err, res] = error;
  52. reject(err)
  53. })
  54. });
  55. }
  56. // 请求图片流
  57. const httpBinary = (url = '', date = {}, type = 'POST', header = {
  58. }) => {
  59. return new Promise((resolve, reject) => {
  60. header={};
  61. const wxOpenData = uni.getStorageSync("wxOpenData");
  62. if(wxOpenData){
  63. header['token']=wxOpenData.loginInfo.token;
  64. header['uid']=wxOpenData.loginInfo.uid;
  65. }
  66. //header['token']='98A9FED8814B457288166BDF623F33D1';
  67. //header['uid']='39415962-C9D3-466D-A73F-5B5429A8DB2A';
  68. header['Content-Type']='application/x-www-form-urlencoded';
  69. //console.log(header)
  70. uni.request({
  71. method: type,
  72. url: baseUrl + url,
  73. data: date,
  74. header: header,
  75. dataType: 'json',
  76. responseType: "arraybuffer",
  77. }).then((response) => {
  78. /* setTimeout(function() {
  79. uni.hideLoading();
  80. }, 200); */
  81. let [error, res] = response;
  82. if(res.data.code==401||res.data.code==403){
  83. uni.showToast({
  84. title: res.data.msg,
  85. icon:'none',
  86. duration: 3000,
  87. });
  88. uni.clearStorageSync()
  89. uni.navigateTo({
  90. url:'../login/login'
  91. })
  92. }else if(res.data.code==409){
  93. // getToken(url,date,type,header)
  94. }
  95. resolve(res.data);
  96. }).catch(error => {
  97. let [err, res] = error;
  98. reject(err)
  99. })
  100. });
  101. }
  102. function getToken(url,date,type,header){
  103. var header={};
  104. //var userId=uni.getStorageSync("devData").userId;
  105. //var devData=uni.getStorageSync("devData")
  106. header['Content-Type']='application/x-www-form-urlencoded';
  107. uni.request({
  108. method: "POST",
  109. url: baseUrl + '/sys/getTokenByUserID',
  110. data: {
  111. userId:userId
  112. },
  113. header: header,
  114. dataType: 'json',
  115. }).then((response) => {
  116. let [error, res] = response;
  117. var accessToken=res.data.data.accessToken.accessToken;
  118. devData.accessToken=accessToken;
  119. uni.setStorage({
  120. key: 'devData',
  121. data:devData,
  122. success: function () {
  123. refresh(url,date,type,header) //刷新接口
  124. }
  125. });
  126. // console.log(accessToken)
  127. }).catch(error => {
  128. })
  129. }
  130. function refresh(url,date,type,header){
  131. uni.request({
  132. method: type,
  133. url: baseUrl + url,
  134. data: date,
  135. header: header,
  136. dataType: 'json',
  137. }).then((response) => {
  138. setTimeout(function() {
  139. uni.hideLoading();
  140. }, 200);
  141. let [error, res] = response;
  142. if(res.data.code==403){
  143. uni.showToast({
  144. title: res.data.msg,
  145. icon:'none',
  146. duration: 3000,
  147. });
  148. uni.navigateTo({
  149. url:'../login/login'
  150. })
  151. }
  152. resolve(res.data);
  153. }).catch(error => {
  154. let [err, res] = error;
  155. reject(err)
  156. })
  157. }
  158. export default {
  159. http,baseUrl,httpBinary
  160. }