apiAdaptive.js 998 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import config from '@/config'
  2. // 业务自己新加了模块,当然只限制于微服务情况下,单体不用管
  3. const bizCustomization = [
  4. {
  5. label: '/custom/',
  6. value: '/custom/'
  7. }
  8. ]
  9. // 微服务环境下如果拆分为多个代码模块,那他的url是网关转发,这里就要配置
  10. const PREFIX = [
  11. {
  12. label: '/mobile/',
  13. value: '/api/webapp'
  14. },
  15. {
  16. label: '/sys/',
  17. value: '/api/webapp'
  18. },
  19. {
  20. label: '/auth/',
  21. value: '/api/webapp'
  22. },
  23. {
  24. label: '/client/',
  25. value: '/api/webapp'
  26. },
  27. {
  28. label: '/dev/',
  29. value: '/api/webapp'
  30. },
  31. {
  32. label: '/gen/',
  33. value: '/api/webapp'
  34. },
  35. {
  36. label: '/biz/',
  37. value: '/api/bizapp'
  38. }
  39. ]
  40. // 转换url
  41. export const convertUrl = (url) => {
  42. if (config.CLOUD_SERVER === false) {
  43. return url
  44. }
  45. const apiArray = [...PREFIX, ...bizCustomization]
  46. const prefixUrlArray = apiArray.filter((f) => url.indexOf(f.label) > -1)
  47. if (prefixUrlArray && prefixUrlArray.length > 0) {
  48. return prefixUrlArray[0].value + url
  49. }
  50. return url
  51. }