You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nuxt.js 3中setCookie报错:Cannot read properties of undefined (reading 'getHeader')

解决Nuxt中setCookie触发500错误的问题

登录成功后执行以下方法发送refresh token:

export const sendRefreshToken = (event, token) => {
    setCookie(event.res, "refresh_token", token, {
        httpOnly: true,
        sameSite: true
    })
}

服务器返回500错误,控制台报错:

[nuxt] [request error] [unhandled] [500] Cannot read properties of undefined (reading 'getHeader')
  at appendResponseHeader (/C:/Development/Node_Projects/quiz/node_modules/h3/dist/index.mjs:289:27)
  at setCookie (/C:/Development/Node_Projects/quiz/node_modules/h3/dist/index.mjs:358:3)
  at sendRefreshToken (/C:/Development/Node_Projects/quiz/.nuxt/dev/index.mjs:649:3)
  at /C:/Development/Node_Projects/quiz/.nuxt/dev/index.mjs:697:3
  at async Server.toNodeHandle (/C:/Development/Node_Projects/quiz/node_modules/h3/dist/index.mjs:698:7)
  at async Server.toNodeHandle (/C:/Development/Node_Projects/quiz/node_modules/h3/dist/index.mjs:698:7)

问题原因

错误传递了event.res给setCookie方法。在Nuxt 3(基于h3框架)中,setCookie的第一个参数要求直接传入event对象,而非event.res。直接传event.res会导致h3内部无法找到所需的响应方法,触发"Cannot read properties of undefined"错误。

修正代码

将event.res替换为event:

export const sendRefreshToken = (event, token) => {
    setCookie(event, "refresh_token", token, {
        httpOnly: true,
        sameSite: true
    })
}

内容的提问来源于stack exchange,提问作者Nand

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 21:21:02