[ale] OT: XMLHTTP + IE FOUND IT!!

cfowler cfowler at outpostsentinel.com
Fri Dec 15 11:10:27 EST 2006


    req.open("GET", "/SC/Test/alarm_check.pl", false);
    req.setRequestHeader( "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00
GMT" );
    req.send(null);


I had to force IE to get the goods!

This page lists known bugs or issues!


http://en.wikipedia.org/wiki/XMLHttpRequest
On Fri, 2006-12-15 at 10:46 -0500, cfowler wrote:
> I think I'm giving up with IE on this one.  I've modded my code to
> somewhat match your code.  I added an alert("Here") just to see when the
> state changes.
> 
> --- cut here --- Cut here --- Cut Here --- Cut Here --
> var alarm = 0;
> 
> function start_alarm() {
>   setInterval("check_alarm()", 10000);
> }
> 
> function check_alarm() {
>   var req;
>   var xml;
>   var new_id;
> 
>   req = get_from_server();
>   xml = req.responseXML.getElementsByTagName("last_alarm_id")[0];
>   new_id = xml.firstChild.nodeValue;
>   if(alarm == 0) {
>     alarm = new_id;
>   } else if(new_id > alarm) {
>     alarm = new_id;
>     refresh();
>   }
> 
>   return;
> }
> 
> 
> function get_from_server() {
>   var req;
>   req = xmlOpen("GET", "/SC/Test/alarm_check.pl", null, myHandler);
>   return req;
> 
> }function xmlOpen(method, url, toSend, responseHandler){
>   var req;
> 
>   if (window.XMLHttpRequest){
>     req = new XMLHttpRequest();
>   } else if (window.ActiveXObject){
>     req = new ActiveXObject("Microsoft.XMLHTTP");
>   }
> 
>   if(req){
>     req.onreadystatechange = responseHandler;
>     req.open(method, url, true);
> 
> req.setRequestHeader("content-type","application/x-www-form-urlencoded");
>     req.send(toSend);
>   } else {
>      alert('Your browser does not seem to support XMLHttpRequest.');
>   }
> 
>   return req;
> 
> }
> 
> function myHandler() {
>   alert("Here!");
> }
> 
> 
> function refresh() {
>   window.location.href =  unescape(windows.location.pathname);
> }
> --- Cut Here --- Cut Here --- Cut Here --- Cut Here --
> 
> In IE  I keep getting the "Here!" message.  But in access_log
> I see no request to alarm_detail.pl  None.  So what has changed since it
> never ran the CGI?
> 
> 
> On Thu, 2006-12-14 at 23:27 -0500, Jay Loden wrote:
> > 
> > Christopher Fowler wrote:
> > > It appears that the alarm_check.pl program is never called.  I've got
> > > the program dumping to a log file when it is executed and I see that log
> > > file updated every 2 seconds when I access this page in netscape.  In
> > > Windows I see nothing.  I've used alert() to validate that we are
> > > getting to that part of the code so I know req.open() is getting called.
> > > But nothing is happening.  Apache log files also show no attempt by IE
> > > to "GET" the alarm_check.pl program.  No JS error messages in IE either.
> > 
> > Here's the code I've used when testing using javascript to pull pages from the server. 
> > It's mostly borrowed from someplace I found online, I forget where. The "getStatus" 
> > function is what gets called from the html page. Maybe you can compare the code and see if 
> > there's something obviously different that would cause a problem.
> > 
> > 
> > -----
> > 
> > * Open a connection to the specified URL, which is
> > * intended to respond with an XML message.
> > *
> > * @param string method The connection method; either "GET" or "POST".
> > * @param string url The URL to connect to.
> > * @param string toSend The data to send to the server; must be URL encoded.
> > * @param function responseHandler The function handling server response.
> > */
> > function xmlOpen(method, url, toSend, responseHandler){
> >    if (window.XMLHttpRequest){
> >      // browser has native support for XMLHttpRequest object
> >      req = new XMLHttpRequest();
> >    } else if (window.ActiveXObject){
> >        // try XMLHTTP ActiveX (Internet Explorer) version
> >        req = new ActiveXObject("Microsoft.XMLHTTP");
> >    }
> > 
> >    if(req){
> >    req.onreadystatechange = responseHandler;
> >    req.open(method, url, true);
> >    req.setRequestHeader("content-type","application/x-www-form-urlencoded");
> >    req.send(toSend);
> >    } else {
> >        alert('Your browser does not seem to support XMLHttpRequest.');
> >    }
> > }
> > 
> > function getStatus(){
> >    xmlOpen("GET", "http://jayloden.com/cgi-bin/somescript.cgi", null, myHandler)
> >    return true;
> > }
> > 
> > function myHandler(){
> >    //write something to the page or whatever
> > }
> > _______________________________________________
> > Ale mailing list
> > Ale at ale.org
> > http://www.ale.org/mailman/listinfo/ale
> 
> _______________________________________________
> Ale mailing list
> Ale at ale.org
> http://www.ale.org/mailman/listinfo/ale




More information about the Ale mailing list