React:使用 API 从 Prisma 获取数据时出现未处理的错误 500
Posted
技术标签:
【中文标题】React:使用 API 从 Prisma 获取数据时出现未处理的错误 500【英文标题】:React: Unhandled error 500 when using API to get data from Prisma 【发布时间】: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。此外,正如其他人所提到的,拥有堆栈跟踪将有助于识别问题。
【参考方案1】:
应该有一个 axios get 请求的 try catch 块 并且get请求和switch块之间没有联系 (我的意思是你没有将 response.json() 发送到交换机)
【讨论】:
我需要补充什么? 如果可能的话,你能把你的完整项目的链接放上去吗? 我想,但我与其他人合作,所以会很困难 :s 你有什么需要我可以发布的吗?非常感谢您的帮助以上是关于React:使用 API 从 Prisma 获取数据时出现未处理的错误 500的主要内容,如果未能解决你的问题,请参考以下文章
为啥我在使用 Prisma(React 应用程序)在 Mongodb 中显示和删除时遇到问题?