发送给客户端哨兵后无法设置 headers

Cannot set headers after they are sent to the client sentry

我从 sentry.io 收到此代码的错误,我告诉我我无法在之后设置 headers 他们被发送给客户。 这是下一个 js 应用程序

export async function getServerSideProps(ctx) {
  const { res } = ctx

  res.setHeader('Content-Type', 'text/plain')
  res.write('User-agent: *\n')
  res.write('Disallow: \n')
  res.write('Sitemap: https://kalla.com/sitemap.xml\n')
  res.end()

  return {}
}

const Robots = () => null

export default Robots

Response header 仅随请求发送一次,如果您尝试设置它并再次发送,您将收到错误消息。 writeHead() 可以与setHeader() 合并,但writeHead() 优先于后者。 WriteHead() 接受这些参数:writeHead(statusCode, statusMessage, headers),但是接受 setHeader(key, value).

 export async function getServerSideProps(ctx) {
  const { res } = ctx

  res.setHeader('Content-Type', 'text/plain')
  res.setHeader('User-agent','*\n')
  res.setHeader('Disallow', '\n')
  res.setHeader('Sitemap', 'https://kalla.com/sitemap.xml\n')
  res.end()

  return {}
}

 const Robots = () => null

 export default Robots