MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    iFrame blank when displaing http://<ipaddress LMS server>:9000/material

    Scheduled Pinned Locked Moved Solved Troubleshooting
    27 Posts 3 Posters 2.3k Views 3 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • karsten13K Offline
      karsten13 @stephanvdplas
      last edited by

      @stephanvdplas

      mm has a simple internal cors proxy you could try.

      So instead using the <original-url> in the iframe you could try http://localhost:8080/cors?url=<original-url>.

      E.g. if your <original-url> is https://example.com try http://localhost:8080/cors?url=https://example.com

      karsten13K 1 Reply Last reply Reply Quote 0
      • karsten13K Offline
        karsten13 @karsten13
        last edited by

        ups, sam was quicker …

        1 Reply Last reply Reply Quote 0
        • S Offline
          stephanvdplas @sdetweil
          last edited by stephanvdplas

          @sdetweil said in iFrame blank when displaing http://<ipaddress LMS server>:9000/material:

          @stephanvdplas said in iFrame blank when displaing http://<ipaddress LMS server>:9000/material:

          Set-Cookie header didn’t specify a “SameSite” attribute and was defaulted to “SameSite=Lax”

          Ok, I don’t KNOW for certain, but our cors proxy might work there

          change the url in the iframe config to

          http://localhost:MM_PORT/cors?

          the rest like this

          // the url 
          url=http://www.test.com/path?param1=value1 // example
          // if there are headers, skip if not 
          &sendheaders=header1:value1,header2:value2&expectedheaders=header1,header2
          

          make sure quotes around the url string’’

          It doesn’t work. Now there are no errors, but it only shows an empty frame.
          a71fc225-e33a-4d2a-87c8-18801131aa13-image.png

          In the Preview tab, it shows {{snackbar.msg}}
          [24-09-18 22:33:38.8839] Slim::Utils::Misc::msg (1319) Warniing : [22:33:38.8838] “my” variable $mobile masks earlier declaration in same scope at (eval 5777) line 46.

          This warning is also seen in the debug log of LMS server, also when I open the 192.168.3.8/material on a browser on a windows machine (where the site is loading correctly).

          1 Reply Last reply Reply Quote 0
          • S Offline
            stephanvdplas @stephanvdplas
            last edited by stephanvdplas

            @stephanvdplas There is another thing:

            In the preview tab of the content it shows: Failed to load response data: Connection is closed, can’t dispatch pending call to Network.getResponseBody

            S 1 Reply Last reply Reply Quote 0
            • S Offline
              sdetweil @stephanvdplas
              last edited by

              @stephanvdplas now I am out of my knowledge range.

              @karsten13 maybe has more skill here…

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              karsten13K 1 Reply Last reply Reply Quote 0
              • karsten13K Offline
                karsten13 @sdetweil
                last edited by

                @sdetweil said in iFrame blank when displaing http://<ipaddress LMS server>:9000/material:

                @karsten13 maybe has more skill here…

                sorry, no. Maybe google has some findings.

                karsten13K S 2 Replies Last reply Reply Quote 0
                • karsten13K Offline
                  karsten13 @karsten13
                  last edited by

                  you could try adding

                          electronOptions: {
                                  webPreferences: { webSecurity: false },
                          },
                  

                  in config.js

                  1 Reply Last reply Reply Quote 0
                  • S Offline
                    stephanvdplas @karsten13
                    last edited by

                    @karsten13 good option. I tried it (actually I placed the option directly in the electron.js script) but it doesn’t change the situation at all.

                    karsten13K 1 Reply Last reply Reply Quote 0
                    • karsten13K Offline
                      karsten13 @stephanvdplas
                      last edited by

                      @stephanvdplas

                      I can only guess without having the debug case …

                      You can google and try changing electronOptionsDefaults and/or electronSwitchesDefaults in js/electron.js if you find something …

                      S 1 Reply Last reply Reply Quote 0
                      • S Offline
                        stephanvdplas @karsten13
                        last edited by

                        @karsten13 I am quite sure about having the config right:

                        	let electronSwitchesDefaults = ["autoplay-policy", "no-user-gesture-required"];
                        	app.commandLine.appendSwitch(...new Set(electronSwitchesDefaults, config.electronSwitches));
                        	let electronOptionsDefaults = {
                        		width: electronSize.width,
                        		height: electronSize.height,
                        		icon: "mm2.png",
                        		x: 0,
                        		y: 0,
                        		darkTheme: true,
                        		webPreferences: {
                        			contextIsolation: true,
                        			nodeIntegration: false,
                        			zoomFactor: config.zoom,
                        			webSecurity: false
                        		},
                        		backgroundColor: "#000000"
                        	};
                        
                        	// DEPRECATED: "kioskmode" backwards compatibility, to be removed
                        	// settings these options directly instead provides cleaner interface
                        	if (config.kioskmode) {
                        		electronOptionsDefaults.kiosk = true;
                        	} else {
                        		electronOptionsDefaults.show = false;
                        		electronOptionsDefaults.frame = false;
                        		electronOptionsDefaults.transparent = true;
                        		electronOptionsDefaults.hasShadow = false;
                        		electronOptionsDefaults.fullscreen = true;
                        	}
                        
                        	const electronOptions = Object.assign({}, electronOptionsDefaults, config.electronOptions);
                        
                        	// Create the browser window.
                        	mainWindow = new BrowserWindow(electronOptions);
                        
                        

                        So the webSecurity line is the only thing I added/changed.

                        karsten13K S 2 Replies Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 3 / 3
                        • First post
                          Last post
                        Enjoying MagicMirror? Please consider a donation!
                        MagicMirror created by Michael Teeuw.
                        Forum managed by Sam, technical setup by Karsten.
                        This forum is using NodeBB as its core | Contributors
                        Contact | Privacy Policy