【发布时间】:2020-01-16 12:25:44
【问题描述】:
堆栈:NextJS、Contentful + Now
概述:在 getInitialProps 异步函数中调用 contentful 的 getEntries() 请求。在本地环境中,一切正常,我收到帖子然后成功地将它们作为道具传递到我可以呈现它们的页面。
问题:当我尝试使用 Now 进行部署时,出现以下错误:
错误:找不到资源。 在 notFoundError (/zeit/31b54c53/node_modules/contentful/dist/contentful.node.js:7731:19) 在 /zeit/31b54c53/node_modules/contentful/dist/contentful.node.js:7854:13 在 processTicksAndRejections (internal/process/task_queues.js:93:5) 在异步 Function.module.exports.HB77.Post.getInitialProps (/zeit/31b54c53/.next/serverless/pages/p/[id].js:1198:15) 在异步 loadGetInitialProps (/zeit/31b54c53/.next/serverless/pages/p/[id].js:3451:17) { 系统:{类型:'错误',id:'未找到'}, 细节: { 类型:'输入', id: '未定义', 环境:'主人', 空间:未定义 } } 预呈现页面“/p/[id]”https://err.sh/zeit/next.js/prerender-error:错误:无法呈现无服务器页面 在 Object._default [默认] (/zeit/31b54c53/node_modules/next/dist/export/worker.js:12:212) 在 processTicksAndRejections (internal/process/task_queues.js:93:5)
代码:
const Post = props => {
...
}
Post.getInitialProps = async function({ query }) {
const contentfulClient = contentful.createClient({
accessToken: `${process.env.ACCESS_TOKEN}`,
space: `${process.env.SPACE}`
});
const res = await contentfulClient.getEntry(`${query.id}`);
return {
post: res
};
};
export default Post;
【问题讨论】:
标签: reactjs next.js contentful vercel