网页版B站中,理论上登录有效期是3天,但...的全部评论

网页版B站中,理论上登录有效期是3天,但...的全部评论
3个评论
  1. 服务端定期推送: 服务端可以在一定时间间隔内主动推送更新的cookie。通过一些后台任务或定时任务实现。当用户登录后,服务端设置cookie的同时,可能会记录下该cookie的过期时间,然后在过期前一定时间内,服务端会生成新的cookie并主动推送给浏览器。

  2. 定时任务或事件触发: 使用定时任务或事件触发机制,定期检查用户登录状态,如果即将过期,就重新生成cookie并推送。这也可以通过浏览器在前端发送心跳请求来触发。

  3. 每次请求时设置: 在每次用户请求...

2024-01-29
鱼友5063
:
感觉B站的实现是第三种吧,第一种的话,那我如果电脑一直关着呢?那他服务端推送了个寂寞,连接都没建立。
2024-01-29
鱼友0412
感觉第一种也有可能,毕竟是大公司,有自己大型的服务器不奇怪,再搞个啥断电有应急电源啥的∠( ᐛ 」∠)_
2024-01-29

在网页版B站中,通常是通过服务端定期设置和更新cookie来实现登录有效期的延长。具体实现方式可能会有所不同,但整体的思路是服务端在用户登录成功后,设置一个过期时间较长的cookie,比如3天。然后,在每次用户请求服务器时,服务端都会检查用户的cookie是否快要过期,如果是,则重新设置一个新的过期时间,以延长登录状态。

至于具体的实现细节,有以下几种可能的方式:

  1. 定期推送:服务端可以定期发送一个特殊的响应头(如Set-Cookie),用来更新cookie的过期时间。这个响应头会被浏览器...
2024-01-29
鱼友5063
:
怎么知道B站的哪个API的response会带Set-Cookie响应头呢?
2024-01-29
程序员鱼皮
f12 控制台,能看到所有请求的响应,建议小伙伴先按照顺序看我的星球教程吧,网页控制台是必须要会用的
2024-01-29
鱼友5063
:
搜了Set-Cookie的response header,没搜到对应的请求[捂脸]
2024-01-29

没那么复杂,你可以先了解下 Servlet 或者 SpringMVC 种 cookie 的机制

2024-01-29
下载 APP