[英]How to extract a ZIP file from a HTTP resource with node.js
如何使用node.js從HTTP資源中提取ZIP文件?
我嘗試了以下代碼,但出現錯誤,指示ZIP文件可能已損壞(不是):
require('node-zip');
var request = require('request');
request('http://data.geo.admin.ch.s3.amazonaws.com/ch.meteoschweiz.swissmetnet/data.zip', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(new JSZip(body, {base64: false, checkCRC32: true}).files);
}
})
錯誤:
錯誤:到達數據結尾(數據長度= 230973,要求的索引= 261475)。 拉鏈損壞?
request
嘗試將內容解碼為文本,從而破壞您的數據。 嘗試:
request({
method : "GET",
url : "http://data.geo.admin.ch.s3.amazonaws.com/...",
encoding: null // <- this one is important !
}, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(new JSZip(body).files);
// handle error
return;
}
});
另請參見http://stuk.github.io/jszip/documentation/howto/read_zip.html (頁面底部的request
示例)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.