request.js 2.2 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.status !== 200) {
  16. if (res.status == 410000) {
  17. // 存储当前地址
  18. saveUrl()
  19. // 调用退出登录方法清空用户信息
  20. store.commit('user/logout');
  21. // 判断是否开启强制登录
  22. // 跳转页面
  23. interceptor()
  24. uni.showModal({
  25. title: "您未登录!是否马上登录?",
  26. success: (e) => {
  27. if (e.confirm) {
  28. // 保存当前页面地址
  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. console.log(res);
  43. //return Promise.reject(new Error(res.msg || 'Error'))
  44. } else {
  45. return res
  46. }
  47. } catch (e) {
  48. console.log(e);
  49. }
  50. },
  51. error => {
  52. uni.showToast({
  53. title: "加载错误请重试",
  54. duration: 1500,
  55. mask: false,
  56. icon: 'none',
  57. })
  58. return Promise.reject(error)
  59. }
  60. )
  61. // 请求前拦截器
  62. service.interceptors.request(
  63. config => {
  64. let token = uni.getStorageSync('token') || '';
  65. let timestamp = new Date().getTime();
  66. let appSecret = 'ec7222392a31078365430c37218c8dce';
  67. let Appid = 'wx7c77e214364d3b7a';
  68. let Sign = md5(sha1(Appid + timestamp + appSecret + timestamp + Appid + appSecret))
  69. if (!config.header) {
  70. config.header = {
  71. "Authori-zation": 'Bearer ' + token,
  72. "App-id": Appid,
  73. "Sign": Sign,
  74. "Sign-time": timestamp
  75. }
  76. } else {
  77. // 添加key请求头
  78. config.header["Authori-zation"] = 'Bearer ' + token;
  79. config.header["App-id"] = Appid;
  80. config.header['Sign-time'] = timestamp;
  81. config.header['Sign'] = Sign;
  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;