Javascript NextJS部署到Vercel时抛出404
我有一个自定义的express服务器,用于NextJS 当我在本地开发时,一切都很好,但当我部署到Vercel时,每当我尝试访问后端API时,我都会捕获404 出了什么问题?这是我的Javascript NextJS部署到Vercel时抛出404,javascript,reactjs,next.js,vercel,Javascript,Reactjs,Next.js,Vercel,我有一个自定义的express服务器,用于NextJS 当我在本地开发时,一切都很好,但当我部署到Vercel时,每当我尝试访问后端API时,我都会捕获404 出了什么问题?这是我的服务器。ts: import express from 'express'; import next from 'next'; import bodyParser from 'body-parser'; import { connectDbs } from './config/db'; import { listin
服务器。ts
:
import express from 'express';
import next from 'next';
import bodyParser from 'body-parser';
import { connectDbs } from './config/db';
import { listingsRouter } from './routes';
const PORT = process.env.PORT || 3003;
const dbs = ['mydb'];
const dev = process.env.NODE_DEV !== 'production';
const nextApp = next({ dev });
const handle = nextApp.getRequestHandler();
const applyMiddleware = (app) => {
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
};
const applyRoutes = (app) => {
app.use('/api/listings', listingsRouter);
};
const startServer = async () => {
await nextApp.prepare();
const app = express();
applyMiddleware(app);
applyRoutes(app);
app.get('*', (req, res) => handle(req, res));
await connectDbs(dbs);
app.listen(PORT, () => console.log(`App listening on port ${PORT}`));
};
startServer();
自定义服务器的Next.js文档: 无法在Vercel上部署自定义服务器,平台Next.js是为其制作的 资料来源: 即使不能部署自定义服务器,通常也不需要这样做,因为Next.js支持使用
/pages/api
目录的无服务器功能
资料来源:
另请参阅本指南,其中解释了如何将自定义Next.js服务器转换为路由:
来源:您的代码可以正常工作。看来你需要联系Vercel支持部门。这是自定义配置。我想维塞尔找不到路线了。我认为您必须在vercel.json中配置路由。