http problems vs express/nodejs

Issue #14817547 • Assigned to Steven K.


Bob F.
Nov 24, 2017
This issue is public.
Found in
  • Microsoft Edge
Found in build #
Reported by 1 person

Sign in to watch or report this issue.

Steps to reproduce

I have a simple piece of code
and my own handler using nodejs/express
If xxx is my Windows machine it works fine (matches app.get(“cmd/:device/:onoff”)) and if I use edge URL line it works. It the code works fine in Chrome and other browers.

But, In Edge 41, when I use the fetch method (or XMLHttp) and xxx is node running on my pi

Everything is the latest version.


0 attachments

    Comments and activity

    • I seem to have lost of the test saying that the message doesn’t get to the pay and simply fails.

      [edge] => node/express/windows - works
      [edge] => node/express/pi - fails

      Note that I am using standard node 9 not Charka on the server side.

    • Microsoft Edge Team

      Changed Assigned To to “Steven K.”

    • Hi Bob,

      Can you provide a repro for this?  E.g. your node code and/or a network trace from the F12 debugger networking tab or fiddler4?  I want to see what is going on with this.

      Looks like a fun project.  :-)


    • {if you really want error reports you need something more than this little 7 line box}

      Tracking it down. It seems that when I try to use the URL for the pi it is treated as a cached request and simply not sent. For some reason when I make the request of the same program running under VS on Windows the request goes though.

      Name    Protocol    Method  Result  Content type    Received    Time    Initiator
      http://pi3:9084/cmd/088665/on/OfficeNrCloset    HTTP    GET 200     (from cache)    0 s 
      Name    Protocol    Method  Result  Content type    Received    Time    Initiator HTTP    GET 200 application/json    34 B    1.41 s  Fetch

      Adding on the server –
      res.setHeader("Cache-Control", “public, max-age=2592000”);
      res.setHeader("Expires", new Date( + 2592000000).toUTCString());

      On the client adding { cache: 'no-cache’} to the fetch

      Note that the /OfficeNrClose it new so that should, could not have been cached. So what is going on. It’s wierd that the network list I see on the screen is showing the URL without the OfficeNrCloset component. Also, if I put the url on the command line in IE it works fine.

      Hmm - in the console log my catch handler is showing an error

      [object Error]: {description: "Failed to fetch", message: "Failed to fetch", number: -2147418113, stack: "TypeError: Failed to fetch at SetStateNext (http://localhost:51711/bundle.js:1382:13) at Generator.prototype.throw (native code)"}

      (BTW – the console window has a bug – it doesn’t keep scrolling up so I have to do it manually)

      number is -7fff0001 hex

      The statement at 1382 is what it should be

                  const fresp = await fetch(url, { cache: 'no-cache' });

      URL is

      Note the error occured before I had the no-cache

      Ideas? I’m running pretty much the same version of node on Windows and Ubuntu on the pi so it should act the same.

      (BTW, I transpile with TypeScript but want to use ES6 - any chance the Edge for Win Mobile is going to be updated?)

      PS: Had a similar problem with XMLHttp

    • Oops – the server cache code looks backwards but the client no-cache should override it. Will fix

    • BTW, while testing found another bug in Edge or at least bad behavior

      I entered http://pi3:9084/cmd/088665/off/OfficeNrCloset

      when I edited on the address bar to change off to on I get an error message:
      You’ll need a new app to open this pi3
      I presume it’s unrelated but who knows. (I’d put the screen image in but it only works for URLs so won’t bother)

    You need to sign in to your Microsoft account to add a comment.

    Sign in