request.js 2.6 KB

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