如何在vercel部署node服务?

1,316 阅读1分钟
  1. vercel介绍

Vercel 的前端云为开发人员提供构建、扩展和保护更快、更个性化网络的体验和基础设施.
优点:

  • 基础版免费、
  • 支持多种框架一键部署,适合前端部署项目
  • 想部署openai相关的可以用这个,因为vercel服务器不在国内,不会被限制ip,然后绑定域名就可以访问

2. **如何部署node服务**
前端基本都是build出静态资源直接放在服务器上,那么如何在vercel上一直运行js脚本呢, 以express.js为例

image.png index.js代码如下

import express from "express";
import cors from "cors";
const app = express();
app.use(express.json());
app.use(cors()); // Enable All CORS Requests
app.options("*", cors()); // Enable CORS preflight for all routes 测试跨域的时候开启这个地方
app.get("/test", handleRequestTest);
app.listen(3008, function () {
console.log("Server is running on port 3008");
});

这是一个js脚本,运行了express服务端口3008(为啥3000端口不行,因为vercel内置的3000端口被占用),如果直接部署在verlce上运行node index的话,就会发现项目的deploy的build会一直在运行,想要正确部署,vercel内置了一套配置,配置文件为vercel.json

{
"version": 2,
"builds": [
 {
   "src": "index.js",
   "use": "@vercel/node"
 }
],

"routes": [{ "src": "(.*)", "dest": "index.js" }]
}

routers配置是为了可以通过路径访问, package.json里scripts添加build命令, 具体配置代码库链接:github.com/chenzhaozha…