request.js 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. /** axios封装
  2. * 请求拦截、相应拦截、错误统一处理
  3. */
  4. const httpRequest = axios.create({
  5. // baseURL: 'http://192.168.2.155:8080', // 李瑞投前
  6. // baseURL: 'http://192.168.2.111:8080', // 苏文投后
  7. baseURL: 'http://192.168.2.147:8080', // 旭东中间大屏
  8. timeout: 3 * 60 * 1000, // 3分钟等待
  9. withCredentials: true, // 携带cookie
  10. })
  11. // 请求拦截器
  12. httpRequest.interceptors.request.use(
  13. function (config) {
  14. if (config.data && config.data.access_token) {
  15. config.headers['accessToken'] = config.data.access_token
  16. }
  17. if (config.params && config.params.access_token) {
  18. config.headers['accessToken'] = config.params.access_token
  19. }
  20. // if (!isLocalEnv()) {
  21. // if (getQueryVariable('token')) {
  22. // config.headers['access_token'] = getQueryVariable('token')
  23. // }
  24. // } else {
  25. // config.headers['access_token'] = localStorage.getItem('token')
  26. // // config.headers['access_token'] = '4b3ed521-f509-48d9-b907-ab127479df41'
  27. // }
  28. // // 上传文件
  29. // if (config.url == '/apiSys/oss/upload') {
  30. // config.headers['Content-Type'] = 'multipart/form-data'
  31. // } else {
  32. // config.headers['Content-Type'] = 'application/json'
  33. // }
  34. return config
  35. },
  36. function (error) {
  37. return Promise.reject(error)
  38. }
  39. )
  40. //响应拦截
  41. httpRequest.interceptors.response.use(
  42. function (response) {
  43. const res = response.data
  44. // if (res.code == 201) {
  45. // this.ELEMENT.Message.error(res.msg)
  46. // if (!isLocalEnv()) {
  47. // // 跳登录页
  48. // window.location = window.location.origin
  49. // } else {
  50. // localEnvLogin()
  51. // }
  52. // }
  53. return response
  54. },
  55. function (error) {
  56. console.log(error, '??????????')
  57. this.ELEMENT.Message.error(error.message)
  58. return Promise.reject(error)
  59. }
  60. )
  61. function get (url, params) {
  62. return new Promise((resolve, reject) => {
  63. httpRequest
  64. .get(url, { params: params })
  65. .then(res => {
  66. resolve(res.data)
  67. })
  68. .catch(err => {
  69. reject(err.data)
  70. })
  71. })
  72. }
  73. // qs.stringify(data)
  74. function post (url, data, config) {
  75. return new Promise((resolve, reject) => {
  76. httpRequest
  77. .post(url, data, config)
  78. .then(res => {
  79. resolve(res.data)
  80. })
  81. .catch(err => {
  82. reject(err)
  83. })
  84. })
  85. }
  86. function postFile (url, blob) {
  87. return new Promise((resolve, reject) => {
  88. let formdata = new FormData()
  89. formdata.append('multipartFile', blob)
  90. httpRequest
  91. .post(url, formdata)
  92. .then(res => {
  93. resolve(res.data)
  94. })
  95. .catch(err => {
  96. reject(err)
  97. })
  98. })
  99. }
  100. function localEnvLogin () {
  101. post(
  102. '/apiSys/login',
  103. {
  104. username: 'admin',
  105. password: '1q2w3e4r5t',
  106. },
  107. {
  108. transformRequest: [
  109. function (data, headers) {
  110. // 将请求数据转换成功 formdata 接收格式
  111. headers['Content-Type'] = 'application/x-www-form-urlencoded'
  112. return stringify(data)
  113. },
  114. ],
  115. }
  116. ).then(res => {
  117. localStorage.setItem('token', res.data.token || getQueryVariable('token'))
  118. })
  119. }
  120. // 将参数转换成功 formdata 接收格式
  121. function stringify (data) {
  122. let ret = ''
  123. for (const it in data) {
  124. ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&'
  125. }
  126. ret = ret.substring(0, ret.lastIndexOf('&'))
  127. return ret
  128. }
  129. // 格式化日期
  130. function formatDate (time) {
  131. let date = time ? new Date(Number(time)) : new Date();
  132. let Y = date.getFullYear() + '-';
  133. let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
  134. let D = date.getDate() < 10 ? '0' + date.getDate() + ' ' : date.getDate() + ' ';
  135. let h = date.getHours() < 10 ? '0' + date.getHours() + ':' : date.getHours() + ':';
  136. let m = date.getMinutes() < 10 ? '0' + date.getMinutes() + ':' : date.getMinutes() + ':';
  137. let s = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds();
  138. return Y + M + D + h + m + s;
  139. }