【发布时间】:2021-12-31 16:10:42
【问题描述】:
我正在尝试使用 API 从我的 Prisma 数据库中获取一些数据,但出现错误。 这是我的 API:
export default async function handler(req, res) {
switch (req.method) {
case 'DELETE':
const { id } = req.query
const issue2 = await db.deleteUnique(id)
res.status(204).end()
break
case 'GET':
const issue = await db.findUnique(id)
res.status(200).json({ success: true, data: issue })
break
default:
res.status(405).end()
break
}
}
这是我的 index.js 文件,它向我的 API 发送调用:
import axios from 'axios'
import { useRouter } from 'next/router'
const Issue = () => {
const router = useRouter();
const { id } = router.query
const getIssue = async () => {
// GET-request til /api/issues/[id].js
const response = await axios.get(`/api/issues/${id}`)
}
return (
<div>
<h1>Issue {id}</h1>
<button onClick={getIssue}>Hent Id</button>
</div>
)
}
export default Issue
单击按钮获取ID后,我得到的错误是“未处理的运行时错误”,我已经尝试了我能想到的一切。有人可以帮忙吗?
createError
node_modules/axios/lib/core/createError.js (16:0)
settle
node_modules/axios/lib/core/settle.js (17:0)
XMLHttpRequest.onloadend
node_modules/axios/lib/adapters/xhr.js (66:0)
【问题讨论】:
-
您是否获得有关运行时错误的更多信息?行号、调用堆栈等?
-
是的,我可以更新问题@Viktor
-
顺便说一下,您的 Prisma 查询也可能不正确。 Prisma 中没有
deleteUnique操作。您还必须提及型号名称。以下是 findUnique 查询 可能 的样子:await db.issue.findUnique({ where: {id} })。我建议稍微浏览一下 Prisma docs。此外,正如其他人所提到的,拥有堆栈跟踪将有助于识别问题。
标签: reactjs database api next.js prisma