另类的web服务运行前端vue打包后的项目(基于nodejs)

express 启动服务

const express = require("express")
const app = express(), host = '127.0.0.1', port = 8105
// 静态文件路径
app.use(express.static("./html"))

// 启动服务监听端口
app.listen(port, function (err) {
  if (err) {
    console.log(err)
  } else {
    console.log("应用实例访问地址为 http://%s:%s", host, port)
  }
})

history 路由模式

const history = require("connect-history-api-fallback")
app.use(history())

接口代理

const proxyConfig = {
  "/prod-api": {
    target: "http://www.xxx.com",
    changeOrigin: true,
    pathRewrite: {
      "/prod-api": ""
    }
  }
}
// 对象循环插入代理
for (let key in proxyConfig) {
  app.use(key, createProxyMiddleware(proxyConfig[key]))
}

整体代码

"use strict"
const express = require("express")
const history = require("connect-history-api-fallback")
const { createProxyMiddleware } = require("http-proxy-middleware")
const app = express(), host = "127.0.0.1", port = 8106
const proxyConfig = {
  "/prod-api": {
    target: "http://wish.weiphone8.com:19148",
    changeOrigin: true,
    pathRewrite: {
      "/prod-api": ""
    }
  }
}
for (let key in proxyConfig) {
  app.use(key, createProxyMiddleware(proxyConfig[key]))
}
app.use(history())
// html 目录存放打包的代码
app.use(express.static("./html"))
module.exports = app.listen(port, function (err) {
  if (err) {
    console.log(err)
  } else {
    console.log("应用实例,访问地址为 http://%s:%s", host, port)
  }
})
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容