Node.js 部署时忽略Nuxt边缘服务器中间件路由(错误404)

Node.js 部署时忽略Nuxt边缘服务器中间件路由(错误404),node.js,firebase,nuxt.js,Node.js,Firebase,Nuxt.js,我正试图在firebase主机上卸载一个SSR nuxt遗留边缘项目。 在开发模式(npm-run-dev)下,一切都可以正常工作。 我正在使用nuxtconfig.js中定义的serverMiddleware/api serverMiddleware: [ bodyParser.json(), session({ secret: 'amdskfmdlkfdklfndfmdfndsmfndfnejnjheheuewytwgssa', resave:

我正试图在firebase主机上卸载一个SSR nuxt遗留边缘项目。 在开发模式(npm-run-dev)下,一切都可以正常工作。 我正在使用nuxtconfig.js中定义的serverMiddleware/api

serverMiddleware: [
    bodyParser.json(),
    session({
        secret: 'amdskfmdlkfdklfndfmdfndsmfndfnejnjheheuewytwgssa',
        resave: true,
        saveUninitialized: false,
        cookie: { maxAge: (20 * 60 * 1000), secure: false }  
    }),
    //{ path: '/api', handler: '~/api/index.js' },
    '~/api'
]
而my/api/index.js是

const express = require('express')
const bodyParser = require('body-parser');
const router = express.Router()
const app = express();

app.use(express.static(path.join(__dirname, 'public')));
app.use(bodyParser.json({ limit: '50mb' }));
app.use(bodyParser.urlencoded({ extended: false }));

router.use((req, res, next) => {
  Object.setPrototypeOf(req, app.request)
  Object.setPrototypeOf(res, app.response)
  req.res = res
  res.req = req
  next()
})


router.post('/confirmlogin', (req, res) => {
  console.log('[API] - LOGIN POST', req.body.role)
  req.session.userId = req.body.uid
  req.session.role = req.body.role
  req.session.token = req.body.token
  req.session.profile=req.body.profile

  res.cookie('access_token', req.body.token, {
    maxAge: 3600000,
    httpOnly: true
  }) /* 1 hour */
  return res.json({
    status: 'success'
  })
})

router.post('/confirmlogout', (req, res) => {
  console.log('[API] - LOGOUT POST')
  delete req.session.userId
  delete req.session.role
  delete req.session.token
  delete req.session.profile
  res.clearCookie('access_token');
  return res.json({
    status: 'success'
  })
})

app.use('/', router);

module.exports = {
  path: '/api',
  handler: router
}
firebase功能定义为:

const functions = require('firebase-functions');
const { Nuxt } = require('nuxt-legacy-edge');
var express =require("express");
var app=express();
const config = {
    dev: false,
    buildDir: '.nuxt',
};
const nuxt = new Nuxt(config);

exports.webaffitto = functions.https.onRequest((req, res) =>  nuxt.render(req, res));
如路由api/confirmlogin和api/confirmlogout中所示,在开发模式下工作良好,但若使用命令投入生产,则

firebase服务--仅功能,托管
或 使用

似乎这些路线丢失了,我得到了404(未找到)


非常感谢您的帮助。

您找到解决方案了吗?
firebase deploy