request.js 1.9 KB

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