firebase云函数使用express重定向

firebase云函数使用express重定向,firebase,express,google-cloud-functions,angular-universal,response.redirect,Firebase,Express,Google Cloud Functions,Angular Universal,Response.redirect,我正在尝试自动确定用户应该重定向到网站的哪种语言 安装是Firebase云功能,带有ExpressJS服务器和Angular Universal SSR 当首选语言由request.acceptsLanguages(…)确定时,我试图通过response.redirect('/en')重定向 当通过firebase-service进行本地调试时,它会重定向,但部署时,它似乎根本不起作用,甚至来自该端点的日志也不会显示在日志列表中 // All base routes are redirected

我正在尝试自动确定用户应该重定向到网站的哪种语言

安装是Firebase云功能,带有ExpressJS服务器和Angular Universal SSR

当首选语言由
request.acceptsLanguages(…)
确定时,我试图通过
response.redirect('/en')重定向

当通过
firebase-service
进行本地调试时,它会重定向,但部署时,它似乎根本不起作用,甚至来自该端点的日志也不会显示在日志列表中

// All base routes are redirected to language specific
app.get('/', (req, res) => {
  console.log('this is /');

  if (req.acceptsLanguages('cs', 'cs-CZ', 'sk', 'sk-CZ')) {
    res.redirect(`/cs`);
  } else {
    res.redirect(`/en`);
  }
});

// All regular routes use the Universal engine
app.get('*', (req, res) => {
  console.log('this is *');

  res.render('index', { req });
});

export const ssr = functions.https.onRequest(app);

问题在于
index.html
被用作
/
路由上的静态文件

我将Angular的
index.html
重命名为
web index.html
(任何描述性名称都可以)

如果找到匹配路由,还可以将Express静态文件服务器配置为不提供
index.html
文件,但这将禁用提供任何已预渲染的页面(如果您有SSR预渲染设置)