import cmd from 'node-command-line'
import zipFolder from 'zip-folder'
import Download from 'image-downloader'
Прежде всего создайте директорию или папку, чтобы преобразовать ее в zip
const zipName = `zipFolderName`
//Folder name which become zip
cmd.run(`mkdir -p ${__dirname}/../public/`)
//Create public direactory in server(backend)
cmd.run(`chmod -R 777 ${__dirname}/../public/`)
//Give persmission on public folder
cmd.run(`mkdir -p ${__dirname}/../public/${zipName}/`)
cmd.run(`mkdir -p ${__dirname}/../public/${zipName}/${zipName}/`)
Загрузите все изображение или файл, используя url, и сохраните
const promiseArr = []
const url = decodeURI('path_of_url') //Decode url
const fileName = url.replace(/.*\//g, '') //extract filename from url
const options = {
url: urls[i],
dest: `${__dirname}/../public/${zipName}/${zipName}/${fileName}`
//Path of your zip file
}
Download.image(options)
.then((filename) => {
promiseArr.push(filename) //If we want to return promise
})
sjkhderhkjwe
zipFolder(`${__dirname}/../public/${zipName}/`, //path of folder
`${__dirname}/../public/${zipName}.zip`, //where zip made
async (err) => {
if (err) {
thorw new Error(err)
} else {
const urls = `${__dirname}/../public/${zipName}.zip`
//const zipUrl = await uploadZipToAWS(zipName, urls)
// Upload zip or move zip to front End
cmd.run(`rm -rf ${__dirname}/../public/${zipName}/`)
//Remove this zip from server
cmd.run(`rm -rf ${__dirname}/../public/${zipName}.zip`)
//Remove this zip from server
//Return back url
}
})
Пожалуйста, позаботьтесь о пути (__dirname).Установите модули на стороне сервера.И управлять кодом на основе ваших требований.
Отправьте обратный URL-адрес (путь) почтового индекса на внешний интерфейс и получите доступ к нему или сделайте его доступным для загрузки в браузере.