Como é que alguns websites sabem quando mudo para outra aba?
Uma forma de o fazer é através de cookies e ids. Primeiro, você está logado no site e tem uma sessão lá. Isto é gerido através de cookies; sempre que visita uma página do site, o seu browser envia um cookie que normalmente contém algum tipo de id. Dessa forma, o servidor pode identificar qualquer pedido vindo de você, é realmente de você. Então, neste caso, tanto sua aba original quanto sua nova aba irão enviar o mesmo cookie.Segundamente, ele também pode adicionar outro id, diferente (chame-o de id da página), a qualquer link ou formulário que você enviar no site. Assim, um formulário em uma página pode conter o id 1234, e qualquer link também conterá esse id. Cada nova página que você visitar poderá conter um novo id. Portanto, a qualquer momento, o site sabe que a próxima solicitação do seu navegador (identificado pelos cookies) também deve conter essa outra id. Se você navegar pelo site de uma forma normal, clicando em links, enviando formulários, isso será verdade e tudo será bom.
Casos quando a sua próxima solicitação NÃO submeteria a id esperada, a segunda id é:
- você pressiona o botão voltar (você estaria enviando um id de página antiga)
- você abre uma nova aba (isso depende do navegador, mas se ele abre a mesma página que você já está na aba original, ele estaria enviando o id da página atual, não o id da próxima página, que o servidor espera)
De qualquer forma, você envia um pedido com um id de página que o servidor não espera't expect e ele pode fazer um melhor palpite sobre o que você fez.
Artigos semelhantes
- Como é que os websites sabem quando são acedidos através de um browser móvel?
- Porque é que a Apple tem um botão de toque/mudo no iPhone, apesar de ter uma filosofia de design mínima de outra forma?
- Como podemos transferir conversas watsapp quando eu mudo do iOS (iPhone7) para o Android (um mais 6T)?
- Por que meus aplicativos travam quando eu os mudo para um cartão SD?