2012-11-14 18 views
5

Kullanıcılar, Geri Düğmeyi tıkladıklarında önceki uygunsuz bilgileri göstermekten kaçınmanın iyi bir yolunu bulmaya çalışmak için web'de arama yapıyordum. ÖrneğinGoogle, çıkış işleminden sonra Back Button ile nasıl ilgilenir?

:

  • bir çıkıştan sonra bilgileri görmek kaçının.
  • Gönderme ve işleme koyulduktan sonra bir form görmek için.

Bunları mesajları ve diğerleri gözden: Google çözümü gibi avoid go back after logout Prevent back button after logout

ama nasıl uygulandığını bilmiyoruz. Gmail hesabımdan çıkış yaptığımda ve Geri Düğmesini tıklattığımda, önceki postalarımı göremiyorum, Giriş sayfasında kalıyorum.

Geri Düğmeyi değiştirmeye veya bunlardan kaçınmaya çalışmıyorum, sadece uygun veriyi göstermekten kaçınmak istiyorum.

Farklı başlıklar ve meta kullanmayı denedim ama çalışmadı.

+0

sunucu tarafında olduğundan Google ne yapar bilecek kimse; Bir programlama dilini bilmemiz ve bazı kodları görmemiz gerekiyor. – woz

cevap

2

Gmail, bir JavaScript web hizmetidir, böylece geri düğmesini tıklattığınızda statik durum yalnızca arka uçta erişim reddedilen JavaScript istemcisini yükler.

Geleneksel bir web dışı hizmet türü uygulamasında, kimliği doğrulanmış oturumun hala geçerli olduğundan emin olmak için sayfa her yüklendiğinde çalışan JavaScript'e sahip olabilir. Kullanıcı kimliği doğrulanmamışsa, giriş sayfasına geri gönderir.

JS olmadan, tarayıcı önbelleğe alınmış bir kopyayı yükleyecektir.

header("Pragma: no-cache"); 
    header("Cache-Control: no-cache"); 
    header( "Expires: 0"); 

Ayrıca devre dışı önbelleğe alma meta etiketlerini kullanarak yapabilirsiniz: Bu meta etiketleri veya http başlıkları ekleyerek önbelleğe alma devre dışı bırakabilir

<meta http-equiv="Pragma" content="no-cache"> 
<meta http-equiv="Cache-Control" content="no-cache"> 
+0

Açıklamanız için teşekkürler. Sağladığınız kod, her zaman düzgün çalışmıyor gibi görünüyor. Kodlarımda zaten bu metaslar vardı ve onları küçük harflerle aldığımı fark ettim, CamelCase olarak değiştirdim ve şimdi Firefox'ta çalışıyor, ancak IE8 veya Chrome'da değil. Belki de XHTML 1.0 Transitional, benim durumumda HTML especification bağlıdır. Kafam karıştı. – Memochipan

İlgili konular