Как конвертировать base64 в zip и перейти на сервер

Я использую JSZip для архивирования некоторого пользовательского файла загрузки и сохраняю этот zip-файл на сервере. zip_file содержит zip-файл, который я хочу сохранить на сервере. zip_file в формате base64, поэтому, если я сохранил его в PHPMyAdmin как LongText формат, его не удалось сохранить какой-либо почтовый индекс. Можно ли конвертировать zip_file архивировать и перейти в каталог? Если да, то как это сделать? Или Как сохранить значение base64 в PHPMyAdmin.

zip.generateAsync({type:"base64"}).then(function (content) {
zip_file = "data:application/zip;base64," + content;
//zip_file convert and move to /uploads folder
});

0

Решение

Вы можете установить возврат type в blobиспользовать XMLHttpRequest() опубликовать Blob в php

zip.generateAsync({type:"blob"}).then(function (content) {
var request = new XMLHttpRequest();
request.open("POST", "/path/to/server");
request.send(content);
});

при использовании php php://input, увидеть Помимо $ _POST, $ _GET и $ _FILE: работа с BLOB-объектами в JavaScript и PHP

<?php

// choose a filename
$filename = "file.zip";

// the Blob will be in the input stream, so we use php://input
$input = fopen('php://input', 'rb');
$file = fopen($filename, 'wb');

// Note: we don't need open and stream to stream,
// we could've used file_get_contents and file_put_contents
stream_copy_to_stream($input, $file);
fclose($input);
fclose($file);

?>
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]