request.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. import service from './newRequest.js'
  2. import store from '../store';
  3. import md5 from './md5.js'
  4. import sha1 from './sha1.js'
  5. import {
  6. saveUrl,
  7. interceptor
  8. } from '@/utils/loginUtils.js';
  9. // 请求完成后拦截
  10. service.interceptors.response(
  11. response => {
  12. try {
  13. let res = response.data;
  14. // 解析字符串为数字
  15. if (res.code != 1) {
  16. if (res.code == 401) {
  17. console.log('登录过期')
  18. // 存储当前地址
  19. saveUrl()
  20. // 调用退出登录方法清空用户信息
  21. store.commit('user/logout');
  22. // 判断是否开启强制登录
  23. // 跳转页面
  24. uni.showModal({
  25. title: "您未登录!是否马上登录?",
  26. success: (e) => {
  27. if (e.confirm) {
  28. // 保存当前页面地址
  29. interceptor()
  30. }
  31. }
  32. })
  33. } else {
  34. if (res.msg != '系统出现异常') {
  35. uni.showToast({
  36. title: res.msg,
  37. duration: 1500,
  38. mask: false,
  39. icon: 'none',
  40. })
  41. }
  42. }
  43. console.log(res,'扑街');
  44. return Promise.reject(new Error(res.msg || 'Error'))
  45. } else {
  46. return res
  47. }
  48. } catch (e) {
  49. console.log(e);
  50. }
  51. },
  52. error => {
  53. uni.showToast({
  54. title: "加载错误请重试",
  55. duration: 1500,
  56. mask: false,
  57. icon: 'none',
  58. })
  59. return Promise.reject(error)
  60. }
  61. )
  62. // 请求前拦截器
  63. service.interceptors.request(
  64. config => {
  65. let token = uni.getStorageSync('token') || '';
  66. let sign_time = new Date().getTime();
  67. let sys_appid = 'xgred20211207'
  68. let sys_appsecret = '70211202dergxxgred20211207'
  69. let sys_token = md5(md5(sys_appid + sys_appsecret) + sign_time + sha1(sys_appsecret + sign_time))
  70. if (!config.header) {
  71. config.header = {
  72. "sys-appid": sys_appid,
  73. "sign-time": sign_time,
  74. "sys-token": sys_token,
  75. "token": token
  76. }
  77. } else {
  78. config.header['sys-appid'] = sys_appid
  79. config.header['sign-time'] = sign_time
  80. config.header['sys-token'] = sys_token
  81. config.header['token'] = token
  82. }
  83. return config
  84. },
  85. error => {
  86. // 错误处理
  87. console.log(error)
  88. return Promise.reject(error)
  89. }
  90. )
  91. let upFilse = service.upFilse;
  92. export {
  93. upFilse
  94. };
  95. export default service.open;