首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何触发nextjs默认500错误页

如何触发nextjs默认500错误页
EN

Stack Overflow用户
提问于 2022-02-15 23:09:36
回答 2查看 3.6K关注 0票数 4

我无法触发Next.js的500错误页面。大多数资源都讨论如何创建自定义错误页,但是Next.js文档简要地提到了它们的默认错误页面。当API以500状态响应时,我想触发这个默认页面。

假设API响应为500个,Next.js应该显示一个500个错误页面。到目前为止,它返回到发出请求的页面。

代码语言:javascript
运行
复制
return res.status(500).end();
EN

回答 2

Stack Overflow用户

发布于 2022-05-10 09:00:06

我找到的唯一解决方案是从getServerSideProps抛出一个未处理的错误

代码语言:javascript
运行
复制
res.statusCode = 500;
throw new Error('Internal Server Error');

我看到NextJs将其作为500状态代码处理,但只在生产/暂存环境中处理。npm run dev将无法工作,您将无法看到默认的500页。

我需要抛出一个500状态代码,以防止Google去索引我的页面,因为页面内容发生了重大变化,并且该页面的产品不再可用。

票数 6
EN

Stack Overflow用户

发布于 2022-08-12 16:45:13

这就是我如何能够使用npm run buildnpm run start触发这个

(我在索引页中放置了这个随机错误触发器)

代码语言:javascript
运行
复制
export const getServerSideProps: GetServerSideProps = async () => {
  function getRandomInt(max: number): number {
    return Math.floor(Math.random() * max);
  }
  if (getRandomInt(10) === 5) {
    throw new Error('Internal Server Error');
  }

  return {
    props: {
    },
  }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71134546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档