Questa domanda non riguarda quando utilizzare GET o POST in generale; si tratta di quale è quella consigliata per la gestione della disconnessione da un'applicazione web. Ho trovato molte informazioni sulle differenze tra GET e POST in senso generale, ma non ho trovato una risposta definitiva per questo particolare scenario.
Come pragmatico, sono propenso a usare GET, perché implementarlo è molto più semplice di POST; rilascia un semplice link e il gioco è fatto. Questo sembra essere il caso della stragrande maggioranza dei siti Web a cui riesco a pensare, almeno dalla cima della mia testa. Anche Stack Overflow gestisce la disconnessione con GET.
La cosa che mi fa esitare è l'argomentazione (sebbene vecchia) secondo cui alcuni acceleratori / proxy web pre-memorizzano le pagine andando e recuperando tutti i collegamenti che trovano nella pagina, in modo che l'utente ottenga una risposta più veloce quando fa clic su di essi. Non sono sicuro che ciò si applichi ancora, ma se fosse così, in teoria un utente con uno di questi acceleratori verrebbe espulso dall'applicazione non appena accedeva, perché il suo acceleratore avrebbe trovato e recuperato il logout link anche se non ci ha mai cliccato sopra.
Tutto ciò che ho letto finora suggerisce che il POST dovrebbe essere usato per "azioni distruttive", mentre le azioni che non alterano lo stato interno dell'applicazione - interrogazioni simili e simili - dovrebbero essere gestite con GET . Sulla base di questo, la vera domanda qui è:
La disconnessione da un'applicazione è considerata un'azione distruttiva / modifica lo stato interno dell'applicazione?