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