zoukankan      html  css  js  c++  java
  • SWT Browser & XULRunner

    XULRUNNER

    XULRUNNER Download

    http://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/latest/
    http://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/

    XULRunner runtime vs. sdk

    How to install XULRunner for Eclipse
    Edit your app's Run Configuration->Arguments->VM Arguments, add following argument. -Dorg.eclipse.swt.browser.XULRunnerPath=C:xulrunner

    http://www.kodewerx.org/wiki/A_Brief_Introduction_To_XULRunner:_Part_2
    Download the latest stable version from Mozilla: http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/ (Note: Go into the most recent sub-directory and then the "runtimes" sub-directory. You don't need the SDK.)

    XULRunner内核版本

    SWT Browser(xulrunner v24)在使用SWT.MOZILLA时的浏览器属性信息如下:

    js: alert(navigator.userAgent.toLowerCase());  ==> mozilla/5.0 (windows nt 6.3; wow64; rv:24.0) gecko/ /24.0

    Chrome 49: mozilla/5.0 (windows nt 6.3; wow64) applewebkit/537.36 (khtml, like gecko) chrome/49.0.2623.110 safari/537.36
    IE 11: mozilla/5.0 (windows nt 6.3; wow64; trident/7.0; .net4.0e; .net4.0c; tablet pc 2.0; .net clr 3.5.30729; .net clr 2.0.50727; .net clr 3.0.30729; infopath.3; rv:11.0) like gecko
    Firefox 45: mozilla/5.0 (windows nt 6.3; wow64; rv:45.0) gecko/20100101 firefox/45.0
    XULRunner 24: mozilla/5.0 (windows nt 6.3; wow64; rv:24.0) gecko/ /24.0

    Gecko

    Gecko是由Mozilla基金会开发的布局引擎的名字。它原本叫作NGLayout。Gecko的作用是读取诸如HTML、CSS、XUL和JavaScript等的网页内容,并呈现到用户屏幕或打印出来。Gecko已经被许多应用程序所使用,包括若干浏览器,例如Firefox、Mozilla Suite、Camino等。

    Trouble Shooting

    如果没有设置xulrunner路径或注册(xulrunner2.0之前),则报错如下
    Exception in thread "main" org.eclipse.swt.SWTError: No more handles [Could not detect registered XULRunner to use]
     at org.eclipse.swt.SWT.error(SWT.java:4109)
     at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:633)
     at org.eclipse.swt.browser.Browser.<init>(Browser.java:119)
     at com.cci.ddt.composite.LoginComposite.login(LoginComposite.java:280)

    System.setProperty("org.eclipse.swt.browser.XULRunnerPath", "C:\Program Files (x86)\xulrunner");

    eclipse.ini设置在程序中无法使用,该参数显示为null
    -Dorg.eclipse.swt.browser.XULRunnerPath=C:/Resource_SD/XULRUNNER/xulrunner-36.0.1.en-US.win32/xulrunner

    	static void printJavaVmArgs(){
    		System.out.println("************************************Begin");
    		RuntimeMXBean runtimeMxBean = ManagementFactory.getRuntimeMXBean();
    		List<String> arguments = runtimeMxBean.getInputArguments();
    		for(int i=0;i<arguments.size();i++){
    			System.out.println(arguments.get(i));
    		}
    		System.out.println(System.getProperty("org.eclipse.swt.browser.XULRunnerPath"));
    		System.setProperty("org.eclipse.swt.browser.XULRunnerPath", "C:/Resource_SD/XULRUNNER/xulrunner-36.0.1.en-US.win32/xulrunner");
    		System.setProperty("org.eclipse.swt.browser.XULRunnerPath", "C:/sd/eclipse-jee-luna-SR1-win32/eclipse/workspace/DDTClientSWT/xulrunner");
    		System.out.println(System.getProperty("org.eclipse.swt.browser.XULRunnerPath"));
    		System.out.println("************************************End");
    	}
    

    通过System.setProperty设置之后报错如下:
    Exception in thread "main" org.eclipse.swt.SWTError: XPCOM error -2147467259
     at org.eclipse.swt.browser.Mozilla.error(Mozilla.java:2347)
     at org.eclipse.swt.browser.Mozilla.initXULRunner(Mozilla.java:2310)
     at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:622)
     at org.eclipse.swt.browser.Browser.<init>(Browser.java:119)
     at com.cci.ddt.composite.LoginComposite.login(LoginComposite.java:280)
     ...

    JavaXPCOM

    Note: JavaXPCOM was included in XULRunner up through version 1.9.2. It has been removed in XULRunner 2, and is not actively maintained. C:sd oolsEclipseMyEclipse 6.5myeclipseeclipsepluginsorg.mozilla.xpcom_1.8.1.3-20070320MozillaInterfaces.jar 695 KB (712,495 字节)

    Q: What do I need to run the SWT Browser inside Eclipse on Linux?    

    A: The browser versions that are supported by each Eclipse release are listed below.    

    Note that Mozilla/XULRunner versions that are not final releases (eg.- betas, alphas, nightlies) are not supported, even if their version technically satisfies a listed version range.    

    Also note that the Mozilla/XULRunner must be compiled for the same architecture as the SWT jar that is being used.        

    • Eclipse 3.0.x: Mozilla 1.4 GTK2 - 1.6 GTK2.        
    • Eclipse 3.1.x: Mozilla 1.4 GTK2 - 1.7.8 GTK2.        
    • Eclipse 3.2.x: Mozilla 1.4 GTK2 - 1.7.x GTK2.        
    • Eclipse 3.3.x: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x.        
    • Eclipse 3.4.x: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.0.x.        
    • Eclipse 3.5.0 and 3.5.1: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.1.x.        
    • Eclipse 3.5.2: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.x and 3.6.x (but not 2.x).        
    • Eclipse 3.6.x: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.x and 3.6.x (but not 2.x), WebKitGTK+ 1.2.x (see How do I use the WebKit renderer on Linux-GTK?)        
    • Eclipse 3.7.x: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.x and 3.6.x (but not 2.x), WebKitGTK+ 1.2.x and newer        
    • Eclipse 3.8.x: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.x, 3.6.x and 10.x (but not 2.x nor 4.x - 9.x), WebKitGTK+ 1.2.x and newer        
    • Eclipse 4.2: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.x, 3.6.x and 10.x (but not 2.x nor 4.x - 9.x), WebKitGTK+ 1.2.x - 1.8.x        
    • Eclipse 4.2.2 and newer: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.x, 3.6.x and 10.x (but not 2.x nor 4.x - 9.x), WebKitGTK+ 1.2.x and newer        
    • Eclipse 4.4 and newer: Mozilla 1.4 GTK2 - 1.7.x GTK2, XULRunner 1.8.x - 1.9.x, 3.6.x, 10.x and 24.x (but not 2.x nor other unlisted versions), WebKitGTK+ 1.2.x and newer (Eclipse 4.4 and newer uses GTK 3 by default and XULRunner cannot be used in this case as it is not ported to GTK 3 yet)        

    Also note that a Firefox release whose contained Gecko version correlates with the Mozilla versions above can also be used with Eclipse 3.1 and newer (Linux only), provided that it has been compiled with linkable Gecko libraries. It is important to note that Firefox downloads from mozilla.org do not satisfy this criteria, but Firefox installations that are included in major Linux distributions often do in the absence of a XULRunner installation. Attempting to use a Firefox install without linkable Gecko libraries will throw an error with message "No more handles [NS_InitEmbedding...error -2147221164]".

    JavaXPCOM Errors

    XULRunner path: C:/sd/eclipse-jee-luna-SR1-win32/eclipse/workspace/DDTClientSWT/xulrunnerxpcom.dll
    >>>This failed with the following error:
    org.eclipse.swt.SWTError: XPCOM error -2142109695
    	at org.eclipse.swt.browser.Mozilla.error(Mozilla.java:2347)
    	at org.eclipse.swt.browser.Mozilla.initXPCOM(Mozilla.java:1718)
    	at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:650)
    	at org.eclipse.swt.browser.Browser.<init>(Browser.java:119)
    	at com.cci.ddt.windows.Start.displayMozillarVersion(Start.java:100)
    	at com.cci.ddt.windows.Start.main(Start.java:48)
    	
    XULRunner path: C:/Resource_SD/XULRUNNER/xulrunner-36.0.1.en-US.win32/xulrunnerxpcom.dll
    >>>This failed with the following error:
    org.eclipse.swt.SWTError: XPCOM error -2147467259
    	at org.eclipse.swt.browser.Mozilla.error(Mozilla.java:2347)
    	at org.eclipse.swt.browser.Mozilla.initXULRunner(Mozilla.java:2310)
    	at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:622)
    	at org.eclipse.swt.browser.Browser.<init>(Browser.java:119)
    	at com.cci.ddt.windows.Start.displayMozillarVersion(Start.java:100)
    	at com.cci.ddt.windows.Start.main(Start.java:48)
    	
    >>>Snippet creating SWT.MOZILLA-style Browser
    XULRunner path: C:Resource_SDXULRUNNERxulrunner-13.0.en-US.win32xulrunnerxpcom.dll
    >>>This failed with the following error:
    org.eclipse.swt.SWTError: XPCOM error -2147467261
    	at org.eclipse.swt.browser.Mozilla.error(Mozilla.java:2347)
    	at org.eclipse.swt.browser.Mozilla.initXPCOM(Mozilla.java:1748)
    	at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:650)
    	at org.eclipse.swt.browser.Browser.<init>(Browser.java:119)
    	at com.cci.ddt.windows.Start.displayMozillarVersion(Start.java:101)
    	at com.cci.ddt.windows.Start.main(Start.java:48)
    

     SWTError (XPCOM error -2147467259) https://bugs.eclipse.org/bugs/show_bug.cgi?id=174395

    Profile Manager

    https://developer.mozilla.org/zh-CN/docs/Profile_Manager Finding your profile without opening Firefox C:UsersMarkAppDataLocalMozillaFirefoxProfiles

     https://developer.mozilla.org/en-US/docs/How_to_enable_locale_switching_in_a_XULRunner_application /* Don't inherit OS locale */ pref("intl.locale.matchOS", "false"); user_pref("intl.locale.matchOS", true); user_pref("intl.locale.matchOS", false); /* Choose own fallback locale; later it can be overridden by the user */ pref("general.useragent.locale", "en-GB");

    Moazilla.java http://git.eclipse.org/c/platform/eclipse.platform.swt.git/tree/bundles/org.eclipse.swt/Eclipse%20SWT%20Mozilla/common/org/eclipse/swt/browser/Mozilla.java

    Could not initialize the application's security component. The most likely cause is problms with files in your application's profile directory.

    https://developer.mozilla.org/en-US/docs/Make_your_xulrunner_app_match_the_system_locale

    https://adblockplus.org/blog/xulrunner-in-large-projects-part-4-localization-pitfalls some strings are not localized, e.g. labels of default alert dialog buttons, the entire add-on manager or error console UI, some error messages. Yes, these strings are not part of your application, they are part of XULRunner. The good news: XULRunner locales are all there, you can get them. http://hg.mozilla.org/l10n-central/

    user_pref("general.useragent.locale" "zh-CN");

    user_pref("intl.locale.matchOS", "false");

    http://labs.abeautifulsite.net/archived/jquery-alerts/demo/

    http://www.ibm.com/developerworks/cn/opensource/os-cn-freemarker/ 基于 SWT Browser 与 Freemarker 的 Java 桌面开发

    What information is stored in my profile? https://support.mozilla.org/en-US/kb/profiles-where-firefox-stores-user-data?redirectlocale=en-US&redirectslug=Profiles#w_finding-your-profile-without-opening-firefox

    SWT Browser Setup: about:config

    print.print_footerleft=&PT

    print.print_footerright=&D

    print.print_headercenter=""

    print.print_headerleft=&T

    print.print_headright=&U

    Profile的位置

    Also the SWT browser should have a profile named "eclipse" by default (it seems it's located at C:Documents and Settings<user name>Application DataMozillaeclipse\, see mozilla support for more info about profiles.

    winxp:  C:Documents and Settings<user name>Application DataMozillaeclipse win7/8: C:Users<user name>AppDataRoamingMozillaeclipseprefs.js

    Flexible Mozilla profile support https://bugs.eclipse.org/bugs/show_bug.cgi?id=178918

    指定profile

    http://www.eclipse.org/swt/faq.php#specifyprofile

    Q: Can I specify which Mozilla profile gets used?

    A: (@since 4.4) A profile can be specified for use by all Mozilla-based Browser instances by setting Java property org.eclipse.swt.browser.MOZ_PROFILE_PATH to the path of the profile before the first instance of a Mozilla-based Browser is created. The best opportunity for a user to set this property is by launching their application with a -D VM switch (eg.- add to the end of the eclipse.ini file: -Dorg.eclipse.swt.browser.MOZ_PROFILE_PATH=...).

    SWT Browser

    SWT Javadoc

    https://www.eclipse.org/swt/javadoc.php

    Package org.eclipse.swt.browser

    http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fswt%2Fbrowser%2Fpackage-summary.html

    eclipse.org关于SWT Browser的FAQ

    http://www.eclipse.org/swt/faq.php#whatisbrowser

    Q: Which platforms support the SWT Browser, and which native renderers do they use?    

    A: The SWT Browser is currently available on the platforms listed below. By default, Browser instances created with style SWT.NONE use the following native renderers:

            Windows 2000 and newer (Internet Explorer 5.5 and newer)         Mac OS X 10.5 and newer (WebKit)         Linux GTK (details)         Solaris-x86 and Solaris 10 SPARC (details)     Browsers should typically be created with style SWT.NONE as this will attempt to use a native renderer that should not require additional software installation. However for clients with specific native browser requirements, the type of native renderer to use can be specified on a per-instance basis, see How do I explicity use WebKit as the Browser's underlying renderer? and How do I explicitly use Mozilla as the Browser's underlying renderer?.    

    Also note that as of Eclipse/SWT 3.7 it is possible to override the default native renderer that is used for SWT.NONE-style Browsers, see How do I specify the default type of native renderer that is used by the Browser?.

    Q: Can I specify which XULRunner installation gets used?    

    A: Typically a Mozilla-based Browser uses XULRunner's lookup mechanism to find a registered XULRunner at runtime, in which case a XULRunner location does not need to be specified. However if you wish to override this mechanism you can set the value of java system property org.eclipse.swt.browser.XULRunnerPath to the full path of a specific XULRunner to use. This property must be set before the first Browser instance is created.    

    The best opportunity for a user to set this property is by launching their application with a -D VM switch (eg.- add to the end of the eclipse.ini file: -Dorg.eclipse.swt.browser.XULRunnerPath=...).

    SWT Browser的一些实现

    打开新窗口

    This html opens external windows either via JavaScript window.open or a links with a target="_new" attribute. 

    http://git.eclipse.org/c/platform/eclipse.platform.swt.git/tree/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet270.java

    /*******************************************************************************
     * Copyright (c) 2000, 2016 IBM Corporation and others.
     * All rights reserved. This program and the accompanying materials
     * are made available under the terms of the Eclipse Public License v1.0
     * which accompanies this distribution, and is available at
     * http://www.eclipse.org/legal/epl-v10.html
     *
     * Contributors:
     *     IBM Corporation - initial API and implementation
     *******************************************************************************/
    package org.eclipse.swt.snippets;
    
    /*
     * Browser snippet: bring up a browser with pop-up window support
     *
     * For a list of all SWT example snippets see
     * http://www.eclipse.org/swt/snippets/
     *
     * @since 3.1
     */
    import org.eclipse.swt.*;
    import org.eclipse.swt.browser.*;
    import org.eclipse.swt.graphics.*;
    import org.eclipse.swt.layout.*;
    import org.eclipse.swt.widgets.*;
    
    public class Snippet270 {
    
    static final int BROWSER_STYLE = SWT.NONE;
    
    public static void main(String[] args) {
    	Display display = new Display();
    	Shell shell = new Shell(display);
    	shell.setText("Main Window");
    	shell.setLayout(new FillLayout());
    	final Browser browser;
    	try {
    		browser = new Browser(shell, BROWSER_STYLE);
    	} catch (SWTError e) {
    		System.out.println("Could not instantiate Browser: " + e.getMessage());
    		display.dispose();
    		return;
    	}
    	initialize(display, browser);
    	shell.open();
    	browser.setUrl("http://www.eclipse.org");
    	while (!shell.isDisposed()) {
    		if (!display.readAndDispatch())
    			display.sleep();
    		}
    		display.dispose();
    	}
    
    /* register WindowEvent listeners */
    static void initialize(final Display display, Browser browser) {
    	browser.addOpenWindowListener(event -> {
    		if (!event.required) return;	/* only do it if necessary */
    		Shell shell = new Shell(display);
    		shell.setText("New Window");
    		shell.setLayout(new FillLayout());
    		Browser browser1 = new Browser(shell, BROWSER_STYLE);
    		initialize(display, browser1);
    		event.browser = browser1;
    	});
    	browser.addVisibilityWindowListener(new VisibilityWindowListener() {
    		@Override
    		public void hide(WindowEvent event) {
    			Browser browser = (Browser)event.widget;
    			Shell shell = browser.getShell();
    			shell.setVisible(false);
    		}
    		@Override
    		public void show(WindowEvent event) {
    			Browser browser = (Browser)event.widget;
    			final Shell shell = browser.getShell();
    			if (event.location != null) shell.setLocation(event.location);
    			if (event.size != null) {
    				Point size = event.size;
    				shell.setSize(shell.computeSize(size.x, size.y));
    			}
    			shell.open();
    		}
    	});
    	browser.addCloseWindowListener(event -> {
    		Browser browser1 = (Browser)event.widget;
    		Shell shell = browser1.getShell();
    		shell.close();
    	});
    }
    }
    

    Class WindowEvent

    http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fswt%2Fbrowser%2FWindowEvent.html

    A WindowEvent is sent by a Browser when a new window needs to be created or when an existing window needs to be closed. This notification occurs when a javascript command such as window.open or window.close gets executed by a Browser.

    The following notifications are emitted when the user selects a hyperlink that targets a new window or as the result of a javascript that executes window.open.

    Main Browser

    • User selects a link that opens in a new window or javascript requests a new window
    • OpenWindowListener.open() notified
      • Application creates a new Shell and a second Browser inside that Shell
      • Application registers WindowListener's on that second Browser, such as VisibilityWindowListener
      • Application returns the second Browser as the host for the new window content

    Second Browser

    • VisibilityWindowListener.show() notified
      • Application sets navigation tool bar, status bar, menu bar and Shell size
      • Application makes the Shell hosting the second Browser visible
      • User now sees the new window

    Trouble Shooting

    关于Unresponsive Script Warning的处理

    http://kb.mozillazine.org/Unresponsive_Script_Warning

    https://support.mozilla.org/en-US/kb/warning-unresponsive-script

    /**
    					 * Warning Unresponsive script - What it means and how to fix it
    					 * https://support.mozilla.org/en-US/kb/warning-unresponsive-script
    					 */
    					else if (data != null && data.contains("dom.max_script_run_time")) {//
    						data = data.substring(0, data.lastIndexOf(",") + 1) + "60);";
    					}else if (data != null && data.contains("dom.max_chrome_script_run_time")) {//
    						data = data.substring(0, data.lastIndexOf(",") + 1) + "60);";
    					}
    

    关于打开PDF文件的设置

    指定浏览器打开PDF文件的工具

    If you want the browser to open PDF files in a separate Acrobat window, configure the browser to use Acrobat or Adobe Reader as a helper application.
    Then, when you select a PDF file in Internet Explorer, the browser will open the PDF file in an Acrobat window instead of the browser window.

    To configure the browser to use Acrobat or Adobe Reader to open PDF files:

        Quit Internet Explorer.
        Start Acrobat or Adobe Reader.
        Choose "Edit" > "Preferences."
        Select Internet in the list on the left.
        Deselect "Display PDF" in Browser, and click "OK."
        Restart Internet Explorer.

    Note: The next time you select a link to a PDF file, the browser may prompt you to open or save the file.
    If you choose to open the file, the browser opens the file in the helper application that you specified.
    If you choose to save the file, the browser downloads the file to the hard disk.

    How to disable the built-in PDF viewer and use another viewer
    https://support.mozilla.org/en-US/kb/disable-built-pdf-viewer-and-use-another-viewer
    user_pref("pref.downloads.disable_button.edit_actions", false);

    Acrobat Reader FAQ
    http://plugindoc.mozdev.org/faqs/acroread.html#install-linux

    about:config
    about:plugins

    SWT Browser 渲染 HTML 页面内容若干问题的解决方案 

    ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/24.0/win32/zh-CN/Firefox%20Setup%2024.0.exe

    SWT Mozilla 在访问https网页后弹出invalid certificate提示:

    1. certificate name is invalid or does not match site name. Certificate issued to: "localhost". (CN=192.168.1.155)

    2. Certificate is not currently valid. Valid date range: "2015-06-04 08:46:38 - 2015-09-02 08:46:38".   ( -validity 3650)

    3. Certificate is not from a trusted certifying authority. Certificate issuer: "localhost".  (cert_override.txt) 

    https://192.168.1.155:8443/ddt

    让客户端信任服务器证书 cert_override.txt
    使用firefox访问服务https://192.168.1.155:8443添加例外
    拷贝C:UsersMarkAppDataRoamingMozillaFirefoxProfilesa07kksh.defaultcert_override.txt的内容到C:UsersMarkmozilla_config/cert_override.txt
    如下:(U后的内容可以不要,U后必须保留一个空格)
    112.74.247.82:8443    OID.2.16.840.1.101.3.4.2.1    50:C8:75:77:C6:FE:D8:5A:12:10:77:8B:ED:18:5A:79:8F:1F:05:98:F7:11:7B:40:25:C8:18:EC:B2:20:AF:86    U    

    弱临时 Diffie-Hellman 密钥

    Chrome:服务器的瞬时 Diffie-Hellman 公共密钥过弱 ERR_SSL_WEAK_SERVER_EPHEMERAL_DH_KEY
    Firefox:连接 ddt2.soudang.com:8443 时发生错误。 在服务器密钥交换握手信息中 SSL 收到了一个弱临时 Diffie-Hellman 密钥。 (错误码: ssl_error_weak_server_ephemeral_dh_key)
    IE:提示证书出错但是可以打开页面

    about:config 里,把下面两个值从true改成false
    security.ssl3.dhe_rsa_aes_128_sha=false
    security.ssl3.dhe_rsa_aes_256_sha=false

    关于安全警告的处理 | Disable security warning

    常用的关于security的profile设置参数

    http://kb.mozillazine.org/About:config_entries#Security

    关于mixed content warning

    Security Warning
    Although this page is encrypted, the information you have entered is to be sent over an unencrypted connection and could easily be read by a third party.
    Are you sure you want to continue sending this information?

    Firefox对mixed-conten的解释

    https://support.mozilla.org/en-US/kb/mixed-content-blocking-firefox

    if the HTTPS page you visit includes HTTP content, the HTTP portion can be read or modified by attackers, even though the main page is served over HTTPS. When an HTTPS page has HTTP content, we call that content “mixed”.

    如何应对mixed-content-blocking

    security.mixed_content.block_active_content;false
    security.mixed_content.block_display_content;false

    user_pref("security.warn_viewing_mixed", false);
    user_pref("security.warn_viewing_mixed.show_once", false);

    设置了这么多也没用:
    user_pref("security.ui.enable", false);
    user_pref("security.warn_entering_secure", false);
    user_pref("security.warn_entering_secure.show_once", false);
    user_pref("security.warn_entering_weak", false);
    user_pref("security.warn_entering_weak.show_once", false);
    user_pref("security.warn_leaving_secure", false);
    user_pref("security.warn_leaving_secure.show_once", false);
    user_pref("security.warn_submit_insecure", false);
    user_pref("security.warn_submit_insecure.show_once", false);
    user_pref("security.insecure_field_warning.contextual.enabled", false);
    user_pref("security.insecure_password.ui.enabled", false);
    user_pref("security.warn_viewing_mixed", false);
    user_pref("security.warn_viewing_mixed.show_once", false);

  • 相关阅读:
    wqy的ACM赛G朱柏庐
    可持久化数据结构
    LibreOJ#2362蚯蚓
    LibreOJ#2359天天爱跑步
    「Luogu2221」[HAOI2012]高速公路
    「Luogu4158」[SCOI2009]粉刷匠
    「Luogu4317」花神的数论题
    WC2019 游记
    最大权闭合子图模型
    「Luogu2762」太空飞行计划问题
  • 原文地址:https://www.cnblogs.com/markjiao/p/5310741.html
Copyright © 2011-2022 走看看