initialize.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. export default function(context) {
  2. console.log("initialize.........");
  3. let proto = "https";
  4. let url = "";
  5. let cookies = "";
  6. // Server-side
  7. if (process.server) {
  8. console.log("server side............");
  9. const { req } = context;
  10. let host = req.headers.host;
  11. let proto = "https";
  12. if (req.headers["x-forwarded-proto"]) {
  13. proto = req.headers["x-forwarded-proto"];
  14. } else if (req.headers["x-scheme"]) {
  15. proto = req.headers["x-scheme"];
  16. } else if (host.indexOf("local.") != -1) {
  17. proto = "http";
  18. }
  19. url = proto + "://" + host;
  20. cookies = req.headers.cookie;
  21. }
  22. // Client-side
  23. if (process.client) {
  24. console.log("client side............");
  25. url = document.location.href;
  26. let proto = "http";
  27. if (url.indexOf("https://") != -1) {
  28. proto = "https";
  29. }
  30. cookies = document.cookie;
  31. }
  32. let regx = new RegExp(
  33. "((?<branch>[a-z0-9_\\-]+)\\.)?(?<env>(www|prod|test|local|test-jishuin|test-rooter|prod-jishuin|prod-rooter|rooter|jishuin))\\.proginn\\.com(\\:(?<port>\\d+))?",
  34. "i"
  35. );
  36. console.log(regx);
  37. console.log(url);
  38. let groups = regx.exec(url).groups;
  39. let api = "";
  40. let jishuinUrl = "";
  41. let rooterUrl = "";
  42. let siteUrl = "";
  43. if (groups) {
  44. let { branch, env, port } = groups;
  45. switch (env) {
  46. case "www":
  47. api = "https://www.proginn.com";
  48. siteUrl = "https://www.proginn.com";
  49. jishuinUrl = "https://jishuin.proginn.com";
  50. rooterUrl = "https://rooter.proginn.com";
  51. break;
  52. case "test":
  53. case "test-jishuin":
  54. case "test-rooter":
  55. api = "https://" + branch + ".test.proginn.com";
  56. siteUrl = "https://" + branch + ".test.proginn.com";
  57. jishuinUrl = "https://" + branch + ".test-jishuin.proginn.com";
  58. rooterUrl = "https://" + branch + ".test-rooter.proginn.com";
  59. break;
  60. case "local":
  61. if (port && port != "80") {
  62. api = "http://local.proginn.com:" + port;
  63. siteUrl = "http://local.proginn.com:" + port;
  64. jishuinUrl = "http://local-jishuin.proginn.com";
  65. rooterUrl = "http://local-rooter.proginn.com";
  66. } else {
  67. api = "http://local.proginn.com";
  68. siteUrl = "http://local.proginn.com";
  69. jishuinUrl = "http://local-jishuin.proginn.com";
  70. rooterUrl = "http://local-rooter.proginn.com";
  71. }
  72. break;
  73. case "prod":
  74. case "prod-jishuin":
  75. case "prod-rooter":
  76. api = "https://" + branch + ".prod.proginn.com";
  77. siteUrl = "https://" + branch + ".prod.proginn.com";
  78. jishuinUrl = "https://" + branch + ".prod-jishuin.proginn.com";
  79. rooterUrl = "https://" + branch + ".prod-rooter.proginn.com";
  80. break;
  81. default:
  82. // 按生产处理
  83. api = "https://www.proginn.com";
  84. siteUrl = "https://www.proginn.com";
  85. jishuinUrl = "https://jishuin.proginn.com";
  86. rooterUrl = "https://rooter.proginn.com";
  87. break;
  88. }
  89. } else {
  90. // 按生产处理
  91. api = "https://www.proginn.com";
  92. siteUrl = "https://www.proginn.com";
  93. jishuinUrl = "https://jishuin.proginn.com";
  94. rooterUrl = "https://rooter.proginn.com";
  95. }
  96. context.store.dispatch("user/getInfo");
  97. context.store.commit("updateDomainConfig", {
  98. api: api,
  99. siteUrl: siteUrl,
  100. jishuinUrl: jishuinUrl,
  101. rooterUrl: rooterUrl
  102. });
  103. }