#!/usr/local/bin/perl<br /> print "Content-type: text/html; charset=ISO-8859-1\n\n";<br /> print "Pragma: no-cache\n";<br /> print "Cache-Control: no-store\n";<br /> print "Expires: 1\n\n";No caso do de usar cgi-pearl mude a linha da função do Ajax:
De assim:
ajax.open("GET","retorno.cgi",true);Ficara assim:
ajax.open("GET","/cgi-bin/retorno.cgi",true);Note que cgi-bin é o diretorio dos arquivos CGI e Pearl no meu caso a pasta se chama
"cgi-bin" entaum veja o nome da pasta de seus arquivos
Em PHP(você deve por no topo de tudo acima de qualquer outro código):
retorna.php
<?php // Headers $gmtDate = gmdate("D, d M Y H:i:s"); header("Expires: {$gmtDate} GMT"); header("Last-Modified: {$gmtDate} GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache"); ?> <?echo"Seu texto";?>
Em ASP(você deve por no topo de tudo acima de qualquer outro código):
retorna.asp
<% Response.Expires = 0 Response.ExpiresAbsolute = Now() - 1 Response.AddHeader "pragma","no-cache" Response.AddHeader "cache-control","private" Response.CacheControl = "no-cache" %> <% Response.Write("Seu texto") %>
Em HTML(você deve por no topo de tudo acima de qualquer outro código, não garanto que no internetexplorer irá funcionar):
retorno.html
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>titulo</title> <meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" /> <meta http-equiv="Content-Language" content="pt-br" /> <meta http-equiv="Expires" content="Thu, 01 Jan 1970 00:00:00 GMT" /> <meta http-equiv="Cache-Control" content="no-store" /> <meta http-equiv="Pragma" content="no-cache" /> </head> <body> Seu texto </body> </html>
em Could-fusion(você deve por no topo de tudo acima de qualquer outro código):
<cfheader name="Expires" value="#Now()#"> <cfheader name="Pragma" value="no-cache">
em JSP(você deve por no topo de tudo acima de qualquer outro código):
<% response.setHeader("Cache-Control","no-cache"); response.setHeader("Pragma","no-cache"); response.setDateHeader ("Expires", 0); %>
Os código acima servem para que o browser não grave informações no cache para que não acabe reppassando a mesma mensagem...
O código Ajax que retornará um desses dois exemplos:
mensagens.html
<script> function AbrirAjax() { var Ajax; try {Ajax = new XMLHttpRequest(); // XMLHttpRequest para browsers mais populares, como: Firefox, Safari, dentre outros. }catch(ee) { try {Ajax = new ActiveXObject(" Msxml2.XMLHTTP"); // Para o IE da MS }catch(e) { try {Ajax = new ActiveXObject("Microsoft.XMLHTTP"); // Para o IE da MS }catch(e) {Ajax = false; } } } return Ajax; } //Le o arquivo escolhido function LerArquivo(){ var field = document.getElementById("show"); var ajax = AbrirAjax(); ajax.open("GET","retorno.php",true); // Aqui você optita entre ASP ou PHP ajax.onreadystatechange = function() { if(ajax.readyState == 4) { if(ajax.status == 200) { var imprimir = ajax.responseText; field.innerHTML=imprimir; } else { field.innerHTML=erro; } } } ajax.send(null); setTimeout("LerArquivo();",1000); //Relê a mensagem automaticamente } </script>
Em breve se possivel colocarei outras linguagens
Ps.: Eu publiquei aqui e não em PHP ou ASP pois achei que seria errado quis colocar tudo só em um lugar
E achei que fosse aqui...
Se eu estiver enganado me avisem ou movam este tópico
E o melhor Não grave no cache em Ajax:
CODE
Tirei essa script por possiveis erros nela(despois eu coloco corrigida)
Postem suas opiniões
E outros tipos de modificar as informações do cache
Obrigado pela atenção

T++++++
Edição feita por: Silverfox é hipnos, 15/11/2006, 14:47.