#!/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.










