requestWhite.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import carhelp from '@/utils/mixin.js'
  2. //记录请求次数和响应次数
  3. let reqCount = 0,
  4. resCount = 0;
  5. //var token=carhelp.getToken();
  6. var baseUrl=process.car.BASE_URL;
  7. if (process.env.NODE_ENV === "development") {
  8. //baseUrl="http://192.168.33.90:8086/jp-employment-server";
  9. }
  10. const request = (options) => {
  11. var token=carhelp.getToken();
  12. reqCount++;
  13. return new Promise((resolve, reject) => {
  14. //如果特殊链接需要传入token
  15. if(options&&options.token){
  16. token=options.token;
  17. }
  18. uni.request({
  19. method: options.method?options.method:'get',
  20. url: baseUrl + options.url,
  21. data: options.data?options.data:{},
  22. header: options.header?{
  23. ...options.header,
  24. 'Authorization':token
  25. }:{
  26. 'Content-Type': 'application/x-www-form-urlencoded',
  27. 'X-Requested-With': 'XMLHttpRequest',
  28. 'Authorization':token
  29. }
  30. }).then((response) => {
  31. //for(var t = Date.now(); Date.now() - t <= 2000;);
  32. resCount++
  33. //防止连续请求多个接口时loading闪现
  34. let [error, res] = response;
  35. if (res.data.code == 415&&res.data.message=='请先注册信息') {
  36. carhelp.signOut()
  37. uni.redirectTo({
  38. url: 'pagesA/pages/login/index'
  39. })
  40. return;
  41. }
  42. if (res.data.code != 200) {
  43. reject(res.data.message)
  44. } else {
  45. if(!res.data.result){
  46. uni.showToast({
  47. title: res.data.message,
  48. position:'bottom'
  49. })
  50. }
  51. resolve(res.data);
  52. }
  53. }).catch(error => {
  54. resCount++
  55. let [err, res] = error;
  56. reject(err)
  57. })
  58. });
  59. }
  60. export default request