httpApi.js 925 B

1234567891011121314151617181920212223242526272829303132
  1. import request from "./index";
  2. import {getObjValue} from "vue-utils-plus"
  3. //封装的请求
  4. export const httpApi = async (obj, message= true) => {
  5. return new Promise( (resolve) => {
  6. //发起请求
  7. request(obj).then((response) => {
  8. resolve(getResData(response,false));
  9. }).catch((response) => {
  10. if (message) {
  11. window.$message?.error(response?.data?.msg || '未知错误!');
  12. }
  13. resolve(getResData(response,true));
  14. })
  15. });
  16. }
  17. //处理数据
  18. const getResData = (response, error = false) => {
  19. const headers = getObjValue(response?.headers)
  20. return {
  21. response,
  22. res: response?.data,
  23. data: response?.data?.data,
  24. code: response?.data?.code,
  25. msg: response?.data?.msg,
  26. status: response?.status,
  27. disposition: headers['content-disposition'],
  28. error: error
  29. }
  30. }