vercel部署serverless
约定:vercel 约定在根目录下 api文件夹 下创建接口路径,也就是说一个接口就是一个js/ts文件,比如,创建api/getUserInfo.js文件,那么浏览器在请求的时候的地址就是 vercel提供的二级域名/api/getUserInfo?name=zhangsan
接口类型一:js文件
jsexport default function getUserInfo(request, response) { const { name } = request.query response.status(200).send(`Hello ${name}!`) }接口类型二:ts文件
shellnpm i -D @vercel/nodejsimport type { VercelRequest, VercelResponse } from '@vercel/node' export default (request: VercelRequest, response: VercelResponse) => { const { name } = request.query response.status(200).send(`Hello ${name}!`) }如何处理POST请求参数?我个人理解的是,跟express框架类似,获取GET请求参数是request.query,获取POST请求参数是request.body
js// api/getUserInfo.js为例 module.exports = (request, response) => { if (req.method === 'GET') { const { name } = request.query; res.status(200).json({ message: `Hello ${name} (GET)` }); } else if (req.method === 'POST') { const { name } = request.body; res.status(200).json({ message: `Hello, ${name} (POST)` }); } }