RequestModules.ts 954 B

12345678910111213141516171819202122232425262728293031323334
  1. /**
  2. * 说明:
  3. * * 不同服务器的请求模块。
  4. */
  5. import ApiCofig from "@/common/config/ApiCofig";
  6. import { isDev } from "../common/config/AppCofig";
  7. import { appendGetUrlParams } from "@imengyu/imengyu-utils";
  8. import { BaseAppServerRequestModule } from "./BaseAppServerRequestModule";
  9. import type { DataModel } from "@imengyu/js-request-transform";
  10. /**
  11. * 主应用服务请求模块
  12. */
  13. export class AppServerRequestModule<T extends DataModel> extends BaseAppServerRequestModule<T> {
  14. constructor() {
  15. super(isDev ? ApiCofig.server.Dev : ApiCofig.server.Prod);
  16. }
  17. }
  18. /**
  19. * 地图服务请求模块
  20. */
  21. export class MapServerRequestModule<T extends DataModel> extends BaseAppServerRequestModule<T> {
  22. constructor() {
  23. super('https://restapi.amap.com');
  24. this.config.requestInterceptor = (url, req) => {
  25. url = appendGetUrlParams(url, 'key', ApiCofig.amapServerKey);
  26. return { newUrl: url, newReq: req };
  27. };
  28. }
  29. }