загрузить изображение blob в Cloudinary

110
18

Я использую реагировать и реагировать на маршрутизатор на интерфейсе, узел + выражать как мой backend и cloudinary для хранения файлов изображений.

Проблема Im заключается в том, что метод облачного api canant, похоже, открывает/анализирует данные blob, где хранится изображение

 { images: { preview: 'blob:http://localhost:8080/19526dcc-b67d-4697-b112-e5480de61d03' } }

cloudinary.v2.uploader.upload(body.images.preview, function(result) {
console.log(result)
})

Ответ ERROR:

{ Error: ENOENT: no such file or directory, open 'blob:http://localhost:8080/e7f30c71-7e06-4c36-801f-49666e9df053'
at Error (native)
errno: -2,
code: 'ENOENT',
syscall: 'open',
path: 'blob:http://localhost:8080/e7f30c71-7e06-4c36-801f-49666e9df053'
}

Не уверен, что это проблема из-за реакции-маршрутизатора или мне нужно преобразовать данные в другой формат?

Маршруты выглядят так:

app.use('/api/', posts);
app.use('/api/', users);
app.use(express.static(staticPath));
app.use('/', express.static(staticPath));
app.use('/posts/*', express.static(staticPath));
app.use('/new/*', express.static(staticPath));
app.use('/validateEmail/*', express.static(staticPath));

спросил(а) 2021-01-25T13:38:49+03:00 4 месяца, 2 недели назад
1
Решение
64

Метод облачной upload принимает следующие типы для параметра file:

    Локальный путь к файлу (поддерживается только в CloudInfo SDK) Фактические данные (буфер массива байтов). Например, в некоторых пакетах Cloudinary SDK это может быть входной поток ввода-вывода данных (например, File.open (файл, "rb")). URI данных (с кодировкой Base64), макс. ~ 60 МБ (62 910 000 символов) Удаленный URL-адрес FTP, HTTP или HTTPS файла существующего общедоступного файла URL S3 белого ведра

Если вы можете получить доступ к данным blob (а не только к URL-адресу blob), его можно преобразовать в URI данных, который будет принят параметром file для метода upload Cloudlife. Для получения помощи по преобразованию blob в URI данных см. qaru.site/questions/94605/....

ответил(а) 2021-01-25T13:38:49+03:00 4 месяца, 2 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема