【发布时间】:2020-07-26 01:08:47
【问题描述】:
我想通过 Next.js 使用 getServerSideProps 方法(如 explained in the docs)进行服务器端渲染。
数据应该来自数据库,所以我使用mysql 包。这会导致以下错误:
Error serializing `.assertions[0]` returned from `getServerSideProps` in "/assertion". Reason: `object` ("[object Object]") cannot be serialized as JSON. Please only return JSON serializable data types.
我认为这是因为mysql 中的query 方法返回特殊对象(RowDataPacket)。我想传递给getServerSideProps 的结果在登录时如下所示:
[ RowDataPacket { id: 1, title: 'Test' } ]
我可以通过使用JSON.parse(JSON.stringify(result)) 包装结果来修复此错误,但这对我来说似乎很奇怪。
那么,我的简单问题是:如何正确使用mysql.query和getServerSideProps?
或者这是一个应该由Next.js 解决的问题?
谢谢
【问题讨论】:
标签: next.js node-mysql