configure.ts 927 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // @ts-ignore
  2. import { compose, initial } from "@dage/service";
  3. // @ts-ignore
  4. import { getTokenInfo, removeTokenInfo } from "@dage/pc-components";
  5. import { message } from "antd";
  6. import { NoticeType } from "antd/es/message/interface";
  7. const showMessage = (msg: string, type: NoticeType = "error") => {
  8. message.open({
  9. type,
  10. content: msg,
  11. duration: 4,
  12. });
  13. };
  14. initial({
  15. fetch: window.fetch.bind(window),
  16. baseURL: "https://sit-shgybwg.4dage.com",
  17. interceptor: compose(
  18. (request, next) => {
  19. const { token } = getTokenInfo();
  20. if (token) {
  21. request.headers["token"] = token;
  22. }
  23. return next();
  24. },
  25. // 登陆失效
  26. async (request, next) => {
  27. const response = await next();
  28. if ([5001, 5002].includes(response.code)) {
  29. const msg = "登录失效!";
  30. showMessage(msg);
  31. removeTokenInfo();
  32. }
  33. return response;
  34. }
  35. ),
  36. });