request.js 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. "use strict";
  2. const common_vendor = require("../common/vendor.js");
  3. const store_index = require("../store/index.js");
  4. const config = require("../config.js");
  5. const utils_auth = require("./auth.js");
  6. const utils_errorCode = require("./errorCode.js");
  7. const utils_common = require("./common.js");
  8. let timeout = 1e4;
  9. const baseUrl = config.config.baseUrl;
  10. const request = (config2) => {
  11. const isToken = (config2.headers || {}).isToken === false;
  12. config2.header = config2.header || {};
  13. if (utils_auth.getToken() && !isToken) {
  14. config2.header["Authorization"] = "Bearer " + utils_auth.getToken();
  15. }
  16. if (config2.params) {
  17. let url = config2.url + "?" + utils_common.tansParams(config2.params);
  18. url = url.slice(0, -1);
  19. config2.url = url;
  20. }
  21. return new Promise((resolve, reject) => {
  22. common_vendor.index.request({
  23. method: config2.method || "GET",
  24. timeout: config2.timeout || timeout,
  25. url: config2.baseUrl || baseUrl + config2.url,
  26. data: config2.data,
  27. header: config2.header,
  28. dataType: "json"
  29. }).then((response) => {
  30. const res = response;
  31. const data = res.data;
  32. const code = data.code || 200;
  33. const msg = utils_errorCode.errorCode[code] || data.msg || utils_errorCode.errorCode["default"];
  34. if (code === 401) {
  35. utils_common.showConfirm("登录状态已过期,您可以继续留在该页面,或者重新登录?").then((res2) => {
  36. if (res2.confirm) {
  37. store_index.store.dispatch("LogOut").then((res3) => {
  38. common_vendor.index.reLaunch({ url: "/pages/login" });
  39. });
  40. }
  41. });
  42. reject("无效的会话,或者会话已过期,请重新登录。");
  43. } else if (code === 500) {
  44. utils_common.toast(msg);
  45. reject("500");
  46. } else if (code !== 200) {
  47. utils_common.toast(msg);
  48. reject(code);
  49. }
  50. resolve(data);
  51. }).catch((error) => {
  52. let { message } = error;
  53. if (message === "Network Error") {
  54. message = "后端接口连接异常";
  55. } else if (message.includes("timeout")) {
  56. message = "系统接口请求超时";
  57. } else if (message.includes("Request failed with status code")) {
  58. message = "系统接口" + message.substr(message.length - 3) + "异常";
  59. }
  60. utils_common.toast(message);
  61. reject(error);
  62. });
  63. });
  64. };
  65. exports.request = request;