0

I am trying to debug a functionality that runs from a plain old Javascript Web Page and requests to a server. This perfectly works on my computer but fails on another (the real target) When it fails, i get an empty string response from the server. Here is the code that build the request

   // Send request to web server
var url = "/start?f="+filesDesc[iFile].name+"&ft="+ft+"&t="+time0ms;
var req = new XMLHttpRequest();
if (req) {
    
        
    req.open("POST", url, true);
    // Hack to pass bytes through unprocessed.
    req.overrideMimeType('text/plain; charset=x-user-defined');
    req.timeout = 2000;
    req.onreadystatechange = function(e) {
      // In local files, status is 0 upon success in Mozilla Firefox
      if(req.readyState === XMLHttpRequest.DONE) {
        var status = req.status;
        if (status === 0 || (status >= 200 && status < 400)) {
          // The request has been completed successfully
          console.debug(req.responseText);
        } else {
           console.debug("startPlaying : error while sending rqst" );
        }
      }
    };

    req.send();
    
    
}

I noticed that on my computer (working) the output header of the request looks like this :

POST /start?f=2021-02-09_14;05;40&ft=1612880820756.4346&t=1614243685530 HTTP/1.1

On the target computer (FAIL) it looks like :

POST /start?f=2021-02-09_14;05;40&ft=1612879543815&t=1614183852864 undefined

Notice the "undefined" protocol information I wonder what can produce such a difference knowing that :

  • The computer are the same 'Asus ZenBook'
  • Navigator are the same : Mozilla Firefox 85.0.2 (32 bits)
  • Network drivers are the same
  • Client and Server code are the same.

This is very strange behaviour. Many thanks for any precious piece of information !

1 Answers1

0

We find out that this behaviour was a side effect of a DOM exception caused by registering activeX filters. Our application also tried to load video with calls to : navigator.mediaDevices.getUserMedia({video: { deviceId: device.deviceId }})

This was ending in an :

Uncaught DOMException: A network error occured.

Believe me or not, removing activeX filters removes the network error ! We felt into a problem similar to : NotReadableError: Failed to allocate videosource