Ich muss Zip-Archiv in meiner Nodejs-Anwendung herunterladen und entpacken. Ich habe diesen Code:Zip-Datei kann nach dem Herunterladen durch die Anwendung nodejs wegen eines ungültigen CEN-Fehlers nicht geöffnet werden
utils.apiRequest(teamcityOptions)
.then(function (loadedData) {
var tempDir = tmp.dirSync();
var tmpZipFileName = tempDir.name + "\\" + 'bob.zip';
fs.appendFileSync(tmpZipFileName, loadedData);
var zip;
try {
zip = new AdmZip(tmpZipFileName);
} catch (e) {
log('Can not create zip, bad data', e);
}
});
Dieser Code gibt mir Fehler:
Can not create zip, bad data Invalid CEN header (bad signature)
Ich verwende Windows 7. Ich kann nicht einmal diese ZIP-Datei öffnen, mit 7-Zip oder WinRAR (einfache Fehler wie beschädigte Daten).
Auch utils.apiRequest
Funktion Körper ist:
utils.apiRequest: function (options) {
var deferred = defer();
https.get(options, function (request) {
var loadedData = '';
request.on('data', function (dataBlock) {
loadedData += dataBlock.toString('utf8');
});
request.on('end', function() {
deferred.resolve(loadedData);
})
});
return deferred.promise;
}
Wie kann ich mein Problem zu lösen?
PS: Ich habe keine Probleme mit curl
:)
Welche ist Ihr 'loadedData'? – vincent
Es ist Zeichenfolge. Ich habe es in der apiRequest-Funktion von https Node-Modul bekommen. Ich werde den Code der Funktion in 1 Stunde hinzufügen. –
Ich habe den Code der Funktion 'utils.apiRequest' hinzugefügt, damit Sie den Typ von 'loadedData' sehen können. –