我有一个用CRA制作的简单的react应用程序,我把它部署在vercel上。所有的程序似乎都能正常工作,只有一个例外。我的路由处理程序没有发回正确的响应。看起来他们发送的是从构建脚本创建的index.html文件。我不确定为什么会发生这种情况。当我在本地构建它时,它发送了正确的响应。下面是express服务器的代码:
const express = require("express");
const bodyParser = require("body-parser");
const path = require("path");
const app = express();
app.use(express.static(path.join(__dirname, "build")));
app.get("/ping", function (req, res) {
return res.send("pong");
});
// app.get("*", (req, res) => {
// res.sendFile(path.join(__dirname, "build", "index.html"));
// });
const PORT = process.env.PORT || 8080;
app.listen(PORT, () => {
console.log(`Server listening on ${PORT}`);
});
下面是文件结构,如果有帮助的话:
1条答案
按热度按时间bkhjykvo1#
我解决了这个问题。Vercel只支持无服务器部署。你不能托管快速服务器,只能托管静态站点