【发布时间】:2021-05-05 04:35:10
【问题描述】:
我正在构建我的第一个下一个 js 应用程序,我的结构是;
- 反应 - 前端
- Next.js - 后端,但实际上只是 API 的集合
- MongoDB - 文档数据存储
前端运行良好,正在将表单数据发布到我指定的 API。我遇到的问题是如何处理 API 中的 POST 数据?
我下面的代码处理查询字符串调用,但不处理 POST 调用。我还没有添加 req.method 来确定哪个已被调用,因为我需要 API 来允许处理查询字符串和表单发布数据。
import { connectToDatabase } from "../../util/mongodb";
export default async function (req, res) {
try {
const { db } = await connectToDatabase();
const collection = db.collection("answers");
const doc = JSON.parse('{"' + decodeURI(req.url).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g,'":"') + '"}')
const result = await collection.insertOne(doc);
} finally {
await db.close();
}
};
我已经阅读了很多关于使用 Express 中间件的内容,在我看来,这在我正在构建的简单应用程序中是多余的(尽管我理解为什么 React JS 应用程序需要 Express)。
我遵循了 Next.js 参考文档,它有一个 //Handle POST data here,但没有实际示例。
所以我现在质疑我是否采取了正确的方法。
【问题讨论】:
标签: next.js