2015-07-20 22 views
5

Potrzebuję pobrać plik zip na Firefox z kątomierzem. Po kliknięciu linku pobierania pojawi się okno dialogowe Windows z prośbą o otwarcie/zapisanie pliku. Więc jak mogę sobie z tym poradzić. Jakie argumenty muszę przekazać kierowcom? z chromem mogę zrobić z pobrania: { 'prompt_for_download': false}, Pobierz plik w Firefoksie z kątomierzem

ale co mam zrobić z Firefoksa.

Odpowiedz

2

Problemem jest - nie można manipulować tym dialogiem "Zapisz jako ..." za pomocą kątomierza/selenu. Powinieneś unikać otwierania go w pierwszej kolejności i pozwolić Firefoxowi automatycznie pobierać pliki określonego typu (typów) MIME - w twoim przypadku: application/zip.

Innymi słowy, trzeba uruchomić Firefoksa w zwyczaju Firefox Profile ustawienie appropriate preferences:

var q = require("q"); 
var FirefoxProfile = require("firefox-profile"); 

var makeFirefoxProfile = function(preferenceMap, specs) { 
    var deferred = q.defer(); 
    var firefoxProfile = new FirefoxProfile(); 

    for (var key in preferenceMap) { 
     firefoxProfile.setPreference(key, preferenceMap[key]); 
    } 

    firefoxProfile.encoded(function (encodedProfile) { 
     var capabilities = { 
      browserName: "firefox", 
      firefox_profile: encodedProfile, 
      specs: specs 
     }; 

     deferred.resolve(capabilities); 
    }); 
    return deferred.promise; 
}; 

exports.config = { 
    getMultiCapabilities: function() { 
     return q.all([ 
      makeFirefoxProfile(
       { 
        "browser.download.folderList": 2, 
        "browser.download.dir": "/path/to/save/downloads", 
        "browser.helperApps.neverAsk.saveToDisk": "application/zip" 
       }, 
       ["specs/*.spec.js"] 
      ) 
     ]); 
    }, 

    // ... 
} 

Tutaj jesteśmy w zasadzie mówiąc: Firefox, proszę automatycznie pobierać pliki zip, bez pytania do katalogu /path/to/save/downloads.

+0

Dziękuję bardzo, zadziałało. –

+0

@alecxe jak mogliśmy zweryfikować pogodę pobrania pliku? – Nick

+1

@Nie wiesz, poczekaj na pobranie, oto działająca przykład: http://stackoverflow.com/questions/41082777/protractor-test-download-file-without-knowing-filename. – alecxe