Skip to main content

改进登录 GitHub 的方法

· One min read
Chegi

把用户登录 GitHub 的信息放在 cookie 而不是驾到 query string

之前没有这样做的原因是因为读取不到 cookie,因为 cookie 是这样设置的:

假设这是借口 githubAuth/ 的的 cookie 设置:

  res.setHeader(
'Set-Cookie',
cookies.map(({key, value}) => {
return serialize(key, value, {path: '/'})
})
)

这样设置 cookie,JS 不能读取 cookie

改成下面这样就好了

参考: sameSite

  res.setHeader(
'Set-Cookie',
cookies.map(({key, value}) => {
return serialize(key, value, {path: '/', sameSite: 'none', secure: true })
})
)

Blog Comment Frame 版本 升级为 1.2.9,删除了关于 GitHub 登录的无用代码,因为不需要在 iframe 之外登录了,iframe 之内可以读取 cookie 了。