const electron = require('electron'); electron.app.on('web-contents-created', function (event, contents) { contents.on('will-attach-webview', function (event, webPreferences, params) { delete webPreferences.preloadURL; delete webPreferences.preload; webPreferences.nodeIntegration = false; webPreferences.webSecurity = true; webPreferences.allowRunningInsecureContent = false; webPreferences.experimentalFeatures = false; webPreferences.enableBlinkFeatures = false; // For now, we never use <webview>. Just disable it entirely. event.preventDefault(); }); contents.on('will-navigate', (event, navigationUrl) => { event.preventDefault(); }); contents.on('new-window', (event, navigationUrl) => { event.preventDefault(); }); }); electron.app.on('ready', function () { electron.session.defaultSession.setPermissionRequestHandler(function ( webContents, permission, callback, ) { var url = webContents.getURL(); if (url.startsWith('file://')) { callback(true); } else { callback(false); } }); });