如何解决调用 getServerSideProps 中的函数时,Next.js 会话在服务器端不可用
我想知道是否可以从 getServerSideProps 调用我的 API,例如:
await axios.post('/api/auth/refresh-token');
并在服务器端使用之前设置的用户 cookie。
现在,每当我这样做时,服务器都会认为这是一个不同的会话,并且 cookie 不可用。
我使用 next-iron-session 并且如果我在客户端调用 API 一切正常并且会话可用。
解决方法
要在您的 getServerSideProps 中使用用户设置的 cookie,您需要 nextjs 传入上下文参数 https://nextjs.org/docs/basic-features/data-fetching#getserversideprops-server-side-rendering
然后您就可以访问 HTTP IncomingMessage object,您可以在其中访问包含用户 cookie context.req.headers.cookie
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。