Next.js 我如何在nextjs中的每个请求上检查cookie?

Next.js 我如何在nextjs中的每个请求上检查cookie?,next.js,Next.js,我有一个nextjs应用程序,我想检查每个请求,看看他们的cookie中是否保存了JWT。如果没有,我想向他们展示一个登录表单。如果他们确实有一个,那么继续正常操作 我想不出我会在哪里或者怎样做 我会在pages/_app.js中这样做吗?是否有某种中间件。。。事情 希望我已经解释了我想要实现的目标,并且有人可以指导我在哪里或者如何做到这一点。如果每个页面都需要令牌,你应该在_app.js中完成。 否则,您需要在每个需要授权的页面上执行此操作 您可以使用下一个cookies库获取cookies服

我有一个nextjs应用程序,我想检查每个请求,看看他们的cookie中是否保存了JWT。如果没有,我想向他们展示一个登录表单。如果他们确实有一个,那么继续正常操作

我想不出我会在哪里或者怎样做

我会在
pages/_app.js
中这样做吗?是否有某种中间件。。。事情


希望我已经解释了我想要实现的目标,并且有人可以指导我在哪里或者如何做到这一点。

如果每个页面都需要令牌,你应该在_app.js中完成。 否则,您需要在每个需要授权的页面上执行此操作

您可以使用下一个cookies库获取cookies服务器端
npm i下一个cookies

get-ServerSideProps函数应如下所示:

export const getServerSideProps = async (ctx) => {
  try {
    const cookies = cookies(ctx);
    const { token } = cookies;

    // fetch data here with the token...


    return {
      props: { token },
    };
} catch (err) {
    // either the `token` cookie didn't exist
    // either way: redirect to the login page
    console.log(err);
    ctx.res.writeHead(302, { Location: "/login" });
    ctx.res.end();

    return { props: {} };
  }
};