Skip to content

浏览器设置相关方法

概述

本节介绍软航OFFICE文档控件提供的浏览器设置相关方法,这些方法允许开发者管理IE浏览器的可信站点、保护模式等设置,确保文档控件在浏览器环境中的安全性和兼容性。

IE可信站点管理

AddDomainToTrustSite

语法:

javascript
AddDomainToTrustSite(WebSite)

功能:
将网站写入IE可信站点。

参数:

名称必选/可选数据类型说明
WebSite必选string可信任站点URL地址

返回值:
无返回值。

说明:
将网站写入IE可信站点。建议在域名确认后,调用这个方法。

注意: 站点地址不要加入http头,只需要域名或IP地址即可。

使用示例:

javascript
// 添加可信站点
function addDomainToTrustSite() {
    try {
        // 添加域名到可信站点
        OCX_OBJ.AddDomainToTrustSite("example.com");
        console.log("域名已添加到IE可信站点");
    } catch (error) {
        console.error("添加可信站点失败:", error.message);
    }
}

// 添加IP地址到可信站点
function addIPToTrustSite() {
    try {
        // 添加IP地址到可信站点
        OCX_OBJ.AddDomainToTrustSite("192.168.1.100");
        console.log("IP地址已添加到IE可信站点");
    } catch (error) {
        console.error("添加IP地址到可信站点失败:", error.message);
    }
}

// 批量添加可信站点
function addMultipleTrustSites() {
    try {
        var trustSites = [
            "example.com",
            "api.example.com",
            "192.168.1.100",
            "localhost"
        ];
        
        for (var i = 0; i < trustSites.length; i++) {
            OCX_OBJ.AddDomainToTrustSite(trustSites[i]);
            console.log("可信站点已添加:", trustSites[i]);
        }
        
        console.log("批量添加可信站点完成");
    } catch (error) {
        console.error("批量添加可信站点失败:", error.message);
    }
}

// 动态添加可信站点
function addDynamicTrustSite(domain) {
    try {
        if (domain && domain.trim() !== "") {
            OCX_OBJ.AddDomainToTrustSite(domain.trim());
            console.log("动态可信站点已添加:", domain);
        } else {
            console.error("无效的域名:", domain);
        }
    } catch (error) {
        console.error("动态添加可信站点失败:", error.message);
    }
}

AddDomainToTrustSiteWithReturn

语法:

javascript
AddDomainToTrustSiteWithReturn(WebSite)

功能:
将网站写入IE可信站点,并返回返回值。

参数:

名称必选/可选数据类型说明
WebSite必选string可信任站点URL地址

返回值:
String型字符串。

说明:
将网站写入IE可信站点,并返回返回值。建议在域名确认后,调用这个方法。

注意: 站点地址不要加入http头,只需要域名或IP地址即可。

使用示例:

javascript
// 添加可信站点并获取返回值
function addDomainToTrustSiteWithReturn() {
    try {
        // 添加域名到可信站点并获取返回值
        var result = OCX_OBJ.AddDomainToTrustSiteWithReturn("example.com");
        console.log("可信站点添加结果:", result);
        return result;
    } catch (error) {
        console.error("添加可信站点失败:", error.message);
        return "";
    }
}

// 验证可信站点添加结果
function verifyTrustSiteAddition() {
    try {
        var domain = "api.example.com";
        var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(domain);
        
        if (result && result.includes("success")) {
            console.log("可信站点添加成功:", domain);
            return true;
        } else {
            console.log("可信站点添加失败:", domain, result);
            return false;
        }
    } catch (error) {
        console.error("验证可信站点添加失败:", error.message);
        return false;
    }
}

// 批量添加可信站点并收集结果
function addMultipleTrustSitesWithResults() {
    try {
        var trustSites = [
            "example.com",
            "api.example.com",
            "192.168.1.100"
        ];
        var results = {};
        
        for (var i = 0; i < trustSites.length; i++) {
            var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(trustSites[i]);
            results[trustSites[i]] = result;
            console.log("可信站点添加结果:", trustSites[i], result);
        }
        
        console.log("批量添加可信站点结果:", results);
        return results;
    } catch (error) {
        console.error("批量添加可信站点失败:", error.message);
        return {};
    }
}

DeleteDomainToTrustSite

语法:

javascript
DeleteDomainToTrustSite(WebSite)

功能:
删除设置的IE可信站点。

参数:

名称必选/可选数据类型说明
WebSite必选string可信任站点URL地址

返回值:
无返回值。

说明:
删除设置的IE可信站点。

使用示例:

javascript
// 删除可信站点
function deleteDomainToTrustSite() {
    try {
        // 删除域名从可信站点
        OCX_OBJ.DeleteDomainToTrustSite("example.com");
        console.log("域名已从IE可信站点删除");
    } catch (error) {
        console.error("删除可信站点失败:", error.message);
    }
}

// 删除IP地址从可信站点
function deleteIPFromTrustSite() {
    try {
        // 删除IP地址从可信站点
        OCX_OBJ.DeleteDomainToTrustSite("192.168.1.100");
        console.log("IP地址已从IE可信站点删除");
    } catch (error) {
        console.error("删除IP地址从可信站点失败:", error.message);
    }
}

// 批量删除可信站点
function deleteMultipleTrustSites() {
    try {
        var trustSites = [
            "example.com",
            "api.example.com",
            "192.168.1.100"
        ];
        
        for (var i = 0; i < trustSites.length; i++) {
            OCX_OBJ.DeleteDomainToTrustSite(trustSites[i]);
            console.log("可信站点已删除:", trustSites[i]);
        }
        
        console.log("批量删除可信站点完成");
    } catch (error) {
        console.error("批量删除可信站点失败:", error.message);
    }
}

// 动态删除可信站点
function deleteDynamicTrustSite(domain) {
    try {
        if (domain && domain.trim() !== "") {
            OCX_OBJ.DeleteDomainToTrustSite(domain.trim());
            console.log("动态可信站点已删除:", domain);
        } else {
            console.error("无效的域名:", domain);
        }
    } catch (error) {
        console.error("动态删除可信站点失败:", error.message);
    }
}

IE保护模式设置

SetIEProtectionMode

语法:

javascript
SetIEProtectionMode(bIsEnable)

功能:
启用/禁用IE浏览器Internet保护模式。

参数:

名称必选/可选数据类型说明
bIsEnable必选bool是否启用

返回值:
bool型;是否设置成功。

说明:
启用/禁用IE浏览器Internet保护模式。

使用示例:

javascript
// 启用IE保护模式
function enableIEProtectionMode() {
    try {
        // 启用IE保护模式
        var result = OCX_OBJ.SetIEProtectionMode(true);
        if (result) {
            console.log("IE保护模式已启用");
        } else {
            console.log("启用IE保护模式失败");
        }
        return result;
    } catch (error) {
        console.error("启用IE保护模式失败:", error.message);
        return false;
    }
}

// 禁用IE保护模式
function disableIEProtectionMode() {
    try {
        // 禁用IE保护模式
        var result = OCX_OBJ.SetIEProtectionMode(false);
        if (result) {
            console.log("IE保护模式已禁用");
        } else {
            console.log("禁用IE保护模式失败");
        }
        return result;
    } catch (error) {
        console.error("禁用IE保护模式失败:", error.message);
        return false;
    }
}

// 动态设置IE保护模式
function setDynamicIEProtectionMode(enable) {
    try {
        var result = OCX_OBJ.SetIEProtectionMode(enable);
        if (result) {
            console.log("IE保护模式设置成功:", enable ? "启用" : "禁用");
        } else {
            console.log("IE保护模式设置失败:", enable ? "启用" : "禁用");
        }
        return result;
    } catch (error) {
        console.error("动态设置IE保护模式失败:", error.message);
        return false;
    }
}

// 根据安全需求设置IE保护模式
function setIEProtectionModeByRequirement() {
    try {
        var securityLevel = "high"; // 可以是 "high", "medium", "low"
        
        switch(securityLevel) {
            case "high":
                // 高安全级别:启用保护模式
                var result = OCX_OBJ.SetIEProtectionMode(true);
                console.log("高安全级别IE保护模式设置结果:", result);
                break;
            case "medium":
                // 中等安全级别:禁用保护模式
                var result = OCX_OBJ.SetIEProtectionMode(false);
                console.log("中等安全级别IE保护模式设置结果:", result);
                break;
            case "low":
                // 低安全级别:禁用保护模式
                var result = OCX_OBJ.SetIEProtectionMode(false);
                console.log("低安全级别IE保护模式设置结果:", result);
                break;
            default:
                console.error("未知的安全级别:", securityLevel);
        }
    } catch (error) {
        console.error("根据安全需求设置IE保护模式失败:", error.message);
    }
}

方法分类总结

分类方法功能说明
IE可信站点管理AddDomainToTrustSite将网站写入IE可信站点可信站点添加
AddDomainToTrustSiteWithReturn将网站写入IE可信站点并返回结果可信站点添加(带返回值)
DeleteDomainToTrustSite删除设置的IE可信站点可信站点删除
IE保护模式设置SetIEProtectionMode启用/禁用IE浏览器Internet保护模式保护模式控制

使用流程

1. 基本浏览器设置流程

javascript
// 基本浏览器设置流程
function basicBrowserSetup() {
    try {
        // 添加可信站点
        OCX_OBJ.AddDomainToTrustSite("example.com");
        
        // 设置IE保护模式
        OCX_OBJ.SetIEProtectionMode(true);
        
        console.log("基本浏览器设置完成");
    } catch (error) {
        console.error("基本浏览器设置失败:", error.message);
    }
}

2. 可信站点管理流程

javascript
// 可信站点管理流程
function trustSiteManagement() {
    try {
        // 添加多个可信站点
        var trustSites = ["example.com", "api.example.com"];
        
        for (var i = 0; i < trustSites.length; i++) {
            var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(trustSites[i]);
            console.log("可信站点添加结果:", trustSites[i], result);
        }
        
        console.log("可信站点管理流程完成");
    } catch (error) {
        console.error("可信站点管理流程失败:", error.message);
    }
}

3. 安全策略应用流程

javascript
// 安全策略应用流程
function securityPolicyApplication() {
    try {
        // 应用安全策略
        var securityPolicy = {
            trustSites: ["example.com", "api.example.com"],
            enableProtectionMode: true
        };
        
        // 添加可信站点
        for (var i = 0; i < securityPolicy.trustSites.length; i++) {
            OCX_OBJ.AddDomainToTrustSite(securityPolicy.trustSites[i]);
        }
        
        // 设置保护模式
        OCX_OBJ.SetIEProtectionMode(securityPolicy.enableProtectionMode);
        
        console.log("安全策略应用完成:", securityPolicy);
    } catch (error) {
        console.error("安全策略应用流程失败:", error.message);
    }
}

完整示例

1. 基础浏览器设置

javascript
// 基础浏览器设置示例
function basicBrowserSettings() {
    try {
        // 添加可信站点
        OCX_OBJ.AddDomainToTrustSite("example.com");
        
        // 设置IE保护模式
        var result = OCX_OBJ.SetIEProtectionMode(true);
        
        console.log("基础浏览器设置完成,保护模式设置结果:", result);
    } catch (error) {
        console.error("基础浏览器设置失败:", error.message);
    }
}

2. 高级浏览器管理

javascript
// 高级浏览器管理示例
function advancedBrowserManagement() {
    try {
        // 浏览器管理配置
        var browserConfig = {
            trustSites: {
                domains: ["example.com", "api.example.com"],
                ips: ["192.168.1.100", "localhost"]
            },
            protection: {
                enabled: true,
                strictMode: true
            }
        };
        
        // 添加域名可信站点
        for (var i = 0; i < browserConfig.trustSites.domains.length; i++) {
            var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(browserConfig.trustSites.domains[i]);
            console.log("域名可信站点添加结果:", browserConfig.trustSites.domains[i], result);
        }
        
        // 添加IP可信站点
        for (var i = 0; i < browserConfig.trustSites.ips.length; i++) {
            var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(browserConfig.trustSites.ips[i]);
            console.log("IP可信站点添加结果:", browserConfig.trustSites.ips[i], result);
        }
        
        // 设置保护模式
        var protectionResult = OCX_OBJ.SetIEProtectionMode(browserConfig.protection.enabled);
        console.log("保护模式设置结果:", protectionResult);
        
        console.log("高级浏览器管理完成:", browserConfig);
    } catch (error) {
        console.error("高级浏览器管理失败:", error.message);
    }
}

3. 浏览器安全质量控制

javascript
// 浏览器安全质量控制示例
function browserSecurityQualityControl() {
    try {
        // 设置高安全级别
        OCX_OBJ.SetIEProtectionMode(true);
        
        // 添加关键可信站点
        var criticalSites = ["example.com", "api.example.com"];
        for (var i = 0; i < criticalSites.length; i++) {
            var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(criticalSites[i]);
            console.log("关键可信站点添加结果:", criticalSites[i], result);
        }
        
        console.log("浏览器安全质量控制完成");
    } catch (error) {
        console.error("浏览器安全质量控制失败:", error.message);
    }
}

注意事项

  1. 域名格式:站点地址不要加入http头,只需要域名或IP地址即可
  2. 权限要求:修改IE设置需要管理员权限
  3. 浏览器兼容性:主要适用于IE浏览器
  4. 安全考虑:谨慎添加可信站点,避免安全风险
  5. 错误处理:实现完善的错误处理机制
  6. 用户通知:向用户说明设置的影响
  7. 文档说明:向用户说明安全级别的含义和影响

错误处理

javascript
// 浏览器设置错误处理
function handleBrowserSettingsError(operation, error) {
    console.error("浏览器设置失败:", operation, error.message);
    
    switch(operation) {
        case 'AddDomainToTrustSite':
            console.log("添加可信站点失败,请检查:");
            console.log("1. 域名格式是否正确");
            console.log("2. 是否有管理员权限");
            console.log("3. 浏览器是否支持");
            break;
        case 'DeleteDomainToTrustSite':
            console.log("删除可信站点失败,请检查:");
            console.log("1. 域名是否存在");
            console.log("2. 是否有管理员权限");
            console.log("3. 浏览器是否支持");
            break;
        case 'SetIEProtectionMode':
            console.log("设置IE保护模式失败,请检查:");
            console.log("1. 参数是否有效");
            console.log("2. 是否有管理员权限");
            console.log("3. IE是否已正确安装");
            break;
        default:
            console.log("未知浏览器设置操作失败");
    }
}

最佳实践

1. 浏览器设置最佳实践

javascript
// 浏览器设置最佳实践
function browserSettingsBestPractice() {
    try {
        // 浏览器设置配置
        var browserSettingsConfig = {
            trustSites: {
                domains: ["example.com", "api.example.com"],
                ips: ["192.168.1.100"]
            },
            protection: {
                enabled: true,
                strictMode: true
            }
        };
        
        // 应用浏览器设置
        function applyBrowserSettings() {
            try {
                // 添加可信站点
                for (var i = 0; i < browserSettingsConfig.trustSites.domains.length; i++) {
                    var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(browserSettingsConfig.trustSites.domains[i]);
                    console.log("域名可信站点添加结果:", browserSettingsConfig.trustSites.domains[i], result);
                }
                
                // 设置保护模式
                var protectionResult = OCX_OBJ.SetIEProtectionMode(browserSettingsConfig.protection.enabled);
                console.log("保护模式设置结果:", protectionResult);
                
                console.log("浏览器设置应用成功");
            } catch (error) {
                handleBrowserSettingsError('AddDomainToTrustSite', error);
            }
        }
        
        // 应用设置
        applyBrowserSettings();
        
    } catch (error) {
        console.error("浏览器设置最佳实践失败:", error.message);
    }
}

2. 浏览器管理最佳实践

javascript
// 浏览器管理最佳实践
function browserManagementBestPractice() {
    try {
        // 浏览器管理配置
        var browserManagementConfig = {
            trustSites: {
                domains: ["example.com", "api.example.com"],
                ips: ["192.168.1.100"]
            },
            protection: {
                enabled: true,
                strictMode: true
            },
            monitoring: {
                enabled: true,
                logLevel: "info"
            }
        };
        
        // 应用浏览器管理配置
        function applyBrowserManagementConfig() {
            try {
                // 添加可信站点
                for (var i = 0; i < browserManagementConfig.trustSites.domains.length; i++) {
                    var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(browserManagementConfig.trustSites.domains[i]);
                    console.log("域名可信站点添加结果:", browserManagementConfig.trustSites.domains[i], result);
                }
                
                // 设置保护模式
                var protectionResult = OCX_OBJ.SetIEProtectionMode(browserManagementConfig.protection.enabled);
                console.log("保护模式设置结果:", protectionResult);
                
                console.log("浏览器管理配置应用成功");
            } catch (error) {
                console.error("应用浏览器管理配置失败:", error.message);
            }
        }
        
        // 应用配置
        applyBrowserManagementConfig();
        
    } catch (error) {
        console.error("浏览器管理最佳实践失败:", error.message);
    }
}

3. 浏览器安全质量控制最佳实践

javascript
// 浏览器安全质量控制最佳实践
function browserSecurityQualityControlBestPractice() {
    try {
        // 浏览器安全质量控制
        function controlBrowserSecurity() {
            try {
                // 设置高安全级别
                var protectionResult = OCX_OBJ.SetIEProtectionMode(true);
                
                // 添加关键可信站点
                var criticalSites = ["example.com", "api.example.com"];
                var trustResults = {};
                
                for (var i = 0; i < criticalSites.length; i++) {
                    var result = OCX_OBJ.AddDomainToTrustSiteWithReturn(criticalSites[i]);
                    trustResults[criticalSites[i]] = result;
                }
                
                console.log("浏览器安全质量控制完成:", {
                    protection: protectionResult,
                    trustSites: trustResults
                });
                
                return true;
            } catch (error) {
                console.error("浏览器安全质量控制失败:", error.message);
                return false;
            }
        }
        
        // 执行安全质量控制
        var securityResult = controlBrowserSecurity();
        console.log("浏览器安全质量控制结果:", securityResult);
        
    } catch (error) {
        console.error("浏览器安全质量控制最佳实践失败:", error.message);
    }
}

技术要点

  1. 域名格式:站点地址不要加入http头,只需要域名或IP地址即可
  2. 权限要求:修改IE设置需要管理员权限
  3. 浏览器兼容性:主要适用于IE浏览器
  4. 安全考虑:谨慎添加可信站点,避免安全风险
  5. 错误处理:完善的错误处理机制
  6. 用户通知:向用户说明设置的影响
  7. 文档说明:向用户说明安全级别的含义和影响

总结

浏览器设置相关方法为软航OFFICE文档控件提供了重要的浏览器环境控制功能。通过AddDomainToTrustSite方法可以添加可信站点,通过AddDomainToTrustSiteWithReturn方法可以添加可信站点并获取返回值,通过DeleteDomainToTrustSite方法可以删除可信站点,通过SetIEProtectionMode方法可以控制IE保护模式,为开发者提供了灵活的浏览器环境配置接口,大大提升了控件在浏览器环境中的安全性和兼容性。