更新,现在您可以使用
getServerSideProps
和
nextjs
提供了获取用户cookie的简单方法:
How to use cookie inside `getServerSideProps` method in Next.js?
---------旧答案---------
https://github.com/nextjs-boilerplate/next.js-boilerplate
https://github.com/nextjs-boilerplate/next-fetch
--详细信息--
我第一次领养时也有同样的问题
next.js
,因为它在react中工作,所以人们更喜欢使用令牌标记授权用户,并始终在前端运行获取。但作为
下一个js公司
…制造的
ssr
作为一个内置功能,我尝试并找到了通过cookie进行身份验证的可能性,我开始
https://github.com/nextjs-boilerplate/next.js-boilerplate
并根据cookie分割提取
https://github.com/nextjs-boilerplate/next-fetch
--工作原理--
option.credentials = 'include'
和
option.headers.Cookie=document.cookie
将cookie修补到您的请求中。Bnd当取回结果时,这将连接起来,您无法访问cookie头,所以您必须使用另一个头和后端逻辑中需要的其他逻辑,如
res.header('custom-set-cookie', res.getHeader('set-cookie'))
2.服务器端获取:首先,您需要express request对象,并获取类似cookie的
req.headers.cookie
,然后将其打包到fetch-request选项中。取回时,像饼干一样
r.headers._headers[cookieHeaderName]
然后打包回应
res.header('set-cookie', setCookie)
然后,在打包此传输后,您只需调用json api,cookie就会自动传输。如果你不需要通过header(你可以通过js)来更改cookie,你可以使用额外的句柄,比如
res.header('custom-set-cookie',res.getHeader('set-cookie'))
在api中
你可以试试我的
ssr login
在这里
http://nextjs.i18ntech.com/login