我有一个带有链接的Web应用程序。单击此链接时,它将打开弹出窗口,要求使用特定的应用程序打开文件。

我编写了以下代码来创建firefox配置文件,该文件适用于其他文件扩展名,但不适用于.xlsx文件。

        profile.setEnableNativeEvents(true);

        profile.setPreference("browser.download.folderList", 2);
        profile.setPreference("browser.download.manager.showWhenStarting", false);
        profile.setPreference("browser.download.dir", System.getProperty("user.dir")+"\\src\\com\\Download");
        profile.setPreference("browser.download.downloadDir", System.getProperty("user.dir")+"\\src\\com\\Download");
        profile.setPreference("browser.download.defaultFolder", System.getProperty("user.dir")+"\\src\\com\\Download");
        profile.setPreference("browser.download.manager.closeWhenDone", true);
        profile.setPreference("pdfjs.disabled", true);
        profile.setPreference("browser.helperApps.alwaysAsk.force", false);
        profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/xls, application/zip,text/csv,application/msword,application/excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/pdf," +
                "application/vnd.ms-excel,application/msword,application/unknown,application/vnd.openxmlformats-officedocument.wordprocessingml.document");


以下是我得到的弹出窗口:-
java - 如何使用WebDriver处理Firefox中的.xlsx文件下载,默认情况下,窗口弹出窗口为“打开方式”单选按钮,而不是“保存文件”-LMLPHP


我认为,由于窗口弹出窗口未默认设置为“保存文件”单选按钮,因此Firefox配置文件无法正常工作。有解决此情况的解决方案吗?

最佳答案

此首选项为我工作。

profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");


下表记录了使用Office 2007文档时可用的HTTP MIME类型:

扩展MIME类型


.doc应用程序/ msword
.dot应用程序/ msword
.docx application / vnd.openxmlformats-officedocument.wordprocessingml.document
.dotx application / vnd.openxmlformats-officedocument.wordprocessingml.template
.docm application / vnd.ms-word.document.macroEnabled.12
.dotm application / vnd.ms-word.template.macroEnabled.12
.xls应用程序/vnd.ms-excel
.xlt应用程序/vnd.ms-excel
.xla应用程序/vnd.ms-excel
.xlsx application / vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xltx application / vnd.openxmlformats-officedocument.spreadsheetml.template
.xlsm application / vnd.ms-excel.sheet.macroEnabled.12
.xltm application / vnd.ms-excel.template.macroEnabled.12
.xlam应用程序/vnd.ms-excel.addin.macroEnabled.12
.xlsb application / vnd.ms-excel.sheet.binary.macroEnabled.12
.ppt应用程序/vnd.ms-powerpoint
.pot应用程序/vnd.ms-powerpoint
.pps应用程序/vnd.ms-powerpoint
.ppa应用程序/vnd.ms-powerpoint
.pptx application / vnd.openxmlformats-officedocument.presentationml.presentation
.potx application / vnd.openxmlformats-officedocument.presentationml.template
.ppsx application / vnd.openxmlformats-officedocument.presentationml.slideshow
.ppam application / vnd.ms-powerpoint.addin.macroEnabled.12
.pptm application / vnd.ms-powerpoint.presentation.macroEnabled.12
.potm application / vnd.ms-powerpoint.template.macroEnabled.12
.ppsm应用程序/vnd.ms-powerpoint.slideshow.macroEnabled.12

07-28 05:04