WebSocket to localhost not working on Microsoft Edge

18,885

I had a similar problem, but it was when actually navigating to pages in the browser. I could use the phrase localhost and it worked fine, but I didn't work when I used my machine's name. I found this forum where they suggested that you run the following command in a administrator prompt:

CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe

Worked for me. Thought you might be seeing some form of the same issue.

As the forum suggests, you can now also do this by opening Edge and navigating to "about:flags", then tick "Allow localhost loopback (this might put your device at risk)" under "Developer Settings". Should feel a little safer than pasting random stuff into your command prompt.

Edit: As tresf pointed out below, the loopback checkbox in the about:flags appears to have stopped working (as a fix), so you'll have use the CheckNetIsolation command, to make Edge exempt.

Share:
18,885

Related videos on Youtube

Motti
Author by

Motti

тнιѕ αвσυт вσχ ιηтєηтισηαℓℓу ℓєƒт ยภгєค๔ค๒lє

Updated on October 19, 2022

Comments

  • Motti
    Motti over 1 year

    I've created a simple WebSocket server and am trying to connect to it with the following code:

    function test(name) {
        var ws = new WebSocket('ws://localhost:1234');
        ws.onopen = function () {
            ws.send('Hello from ' + name);
        }
    }
    test('Edge');
    

    This works fine from Chrome and IE11 on Windows10 but when I try from Edge, the onopen function isn't called, instead I eventually get the following error:

    SCRIPT12029: WebSocket Error: Network Error 12029, A connection with the server could not be established

    This is happening for version 12.10240 of Edge.

    A similar problem was asked about here but the error message is different.

    Things I tried:

    • IP - localhost, 127.0.0.1, the actual IP
    • Allow localhost loopback flag - both on and off

    When trying to communicate with a different machine the problem does not occur.

    Is this a defect in Edge or am I doing something wrong?

    • Jan
      Jan
      Maybe, but this sure sounds like a bug to me.
  • tresf
    tresf about 8 years
    In recent versions of Edge, the loopback flag seems to be enabled by default now however theCheckNetIsolation fix seems to be required regardless.
  • Sanich
    Sanich almost 8 years
    @QZSupport I had the similar problem and 'CheckNetIsolation' fixed it for me. What does it do?
  • tresf
    tresf over 7 years
    @Sanich the explanation from MS is "Edge runs as a Windows modern app different from IE and thus it is has network isolation by default for security reasons.". Note also, "Automatically detect settings" in Local Intranet Zone can have a similar effect in IE if on a domain. blogs.msdn.microsoft.com/msgulfcommunity/2015/07/01/…
  • Sanich
    Sanich over 7 years
    @QZSupport Thanks! What might be the reason that enabling the loopback flag alone doesn't solve the problem and ''CheckNetIsolation" does?
  • tresf
    tresf over 7 years
    @Sanich, your question is better directed at the Edge developers, but the Microsoft blog article explains the loopback restriction to be imposed on all ModernUI apps (not just edge), thus making the Edge check box rather redundant. Furthermore, domain environments treat "Local Intranet Zone" different from workstation computers, so resolving/troubleshooting WebSocket to localhost on Edge and IE is an obscure and rather undocumented process.