использоватьuniCloud
облачное хранилище,Нет необходимости приобретать место для хранения отдельно, как в традиционной модели.、Сопоставление CDN、закупка трафика и т.д.;
Перенести файлы в облачное хранилище можно 3 способами:
uniCloud.uploadFile
。uniCloud.uploadFile
。Что следует отметить:
uniCloud.uploadFile
。пожалуйста, не путайте。uni.uploadFile
изAPI,Этот API используется для подключения к загрузке, отличной от uniCloud. Пожалуйста, не запутайтесь.В облачном пространстве, предоставляемом Alibaba Cloud в uniCloud, общий размер файла облачного хранилища ограничен 10 ГБ, а размер одного файла ограничен 100 МБ. Он поставляется с CDN и совершенно бесплатен. Эти бесплатные ресурсы можно использовать для обычной деятельности компании. Alibaba Cloud не позволяет разработчикам использовать эти бесплатные ресурсы хранилища и CDN для оказания услуг по работе с изображениями и постельным бельем.
Прежде чем использовать uniCloud.uploadFile на клиенте, в белом списке загрузки необходимо настроить следующие доменные имена.
bsppub.oss-cn-shanghai.aliyuncs.com
Интерфейсная часть вызывает файл загрузки API облачного хранилища.
uniCloud.uploadFile({
CloudPath: "Имя файла, отображаемое в облаке после загрузки", // Может иметь то же имя, не поддерживает подкаталоги
filePath: "Путь к локальному файлу, который требует загрузки",
success:(res)=>{//загрузитьпосле успехаизперезвонить
//res.fileID — это адрес доступа к облаку после завершения загрузки файла, который можно использовать напрямую.
},
fail:()=>{},//загрузитьнеудачаизперезвонить
onUploadProgress:()=>{//загрузить Обратный вызов прогресса
}
})
Следующий код выбирает загрузку изображения из альбома мобильного телефона в облачное хранилище.
//Внешний код
uni.chooseImage({
count: 1,
success(res) {
console.log(res);
if (res.tempFilePaths.length > 0) {
let filePath = res.tempFilePaths[0]
//Выполняем операцию загрузки
// метод обещания
const result = await uniCloud.uploadFile({
filePath: filePath,
cloudPath: 'a.jpg',
onUploadProgress: function(progressEvent) {
console.log(progressEvent);
var percentCompleted = Math.round(
(progressEvent.loaded * 100) / progressEvent.total
);
}
});
// callbackСпособ,иметод обещания Просто выберите одно из двух
uniCloud.uploadFile({
filePath: filePath,
cloudPath: 'a.jpg',
onUploadProgress: function(progressEvent) {
console.log(progressEvent);
var percentCompleted = Math.round(
(progressEvent.loaded * 100) / progressEvent.total
);
},
success() {},
fail() {},
complete() {}
});
}
}
});
На внешнем интерфейсе мы можем только загружать файлы в облачное хранилище, но не удалять файлы из облачного хранилища. Удалить файлы в облачном хранилище или в uniCloud Веб-консоль или работайте в облачных функциях.
const res = await uniCloud.uploadFile({
CloudPath: "Имя файла, отображаемое в облаке после загрузки",
fileContent: "Абсолютный путь к файлу или буферу файла"
})
console.log(res.fileID);//Адрес доступа к облаку после загрузки файла
Следующий код демонстрирует, как прочитать изображение по URL-адресу и сохранить его в собственном облачном хранилище.
const image = await uniCloud.httpclient.request("URL изображения");
const res = await uniCloud.uploadFile({
CloudPath: "Имя файла, отображаемое в облаке после загрузки",
fileContent:image.data//Файловый буфер
});
Примечание: если исходить из Загрузки клиента, не рекомендуется читать файл и затем передавать его Облачной через передачу параметров. функция,Затем из Облачной функции загрузить в облачное хранилище.,Облачное хранилище должно быть передано непосредственно клиенту.
const res = await uniCloud.deleteFile({
fileList: [
"fileID"//Адрес доступа к файлу в облачном хранилище
]
});
При доступе к файлам изображений или видео в облачном хранилище мы можем обрабатывать файлы «на лету», добавляя некоторые параметры. Обратите внимание, что обработка вступает в силу в режиме реального времени и не приведет к каким-либо изменениям файлов в вашем облачном хранилище.
Вы можете настроить размер изображения с помощью параметра масштабирования изображения, который часто используется для создания миниатюр разных размеров.
Как использовать:
//fileID Пример https://vkceyugu.cdn.bspapp.com/VKCEYUGU-ef89fa94-5d19-4f01-b2b8-edc1f4387edc/b98b33ba-1595-4fda-995a-6c4e17a9e2c5.png
fileID?x-oss-process=image/resize, другие параметры
Описание параметра:
Что следует отметить:
Ширина*Высота*Номер рамки изображения
;Нетдинамические картинки(НапримерPNGкартина)из Расчет пикселей СпособдляШирина*Высота
。limit_0
Усиление параметровкартина。Например,https://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_500,limit_0
Вы можете использовать параметры обрезки изображения, чтобы обрезать прямоугольное изображение указанного размера на исходном изображении.
Как использовать:
//fileID Пример https://vkceyugu.cdn.bspapp.com/VKCEYUGU-ef89fa94-5d19-4f01-b2b8-edc1f4387edc/b98b33ba-1595-4fda-995a-6c4e17a9e2c5.png
fileID?x-oss-process=изображение/обрезка, другие параметры
Описание параметра:
Что следует отметить:
При использовании функции пользовательской обрезки обратите внимание на следующее:
BadRequest
ошибка,Сообщение об ошибке: Положение предварительной резки находится за пределами изображения.Вы можете использовать параметры водяного знака изображения, чтобы добавлять текст водяного знака или изображения водяного знака в файлы изображений в облачном хранилище.
Как использовать:
//fileID Пример https://vkceyugu.cdn.bspapp.com/VKCEYUGU-ef89fa94-5d19-4f01-b2b8-edc1f4387edc/b98b33ba-1595-4fda-995a-6c4e17a9e2c5.png
fileID?x-oss-process=изображение/водяной знак, другие параметры
Описание параметра:
Кодировка водяного знака:
Во время операции добавления водяного знака такие параметры, как текстовое содержимое, цвет текста, шрифт текста и имя водяного знака изображения текстового водяного знака, должны быть закодированы в формате Base64, безопасном для URL. Этапы кодирования следующие:
Что следует отметить:
Вы можете использовать параметры преобразования формата для преобразования формата файлов изображений в облачном хранилище.
Как использовать:
//fileID Пример https://vkceyugu.cdn.bspapp.com/VKCEYUGU-ef89fa94-5d19-4f01-b2b8-edc1f4387edc/b98b33ba-1595-4fda-995a-6c4e17a9e2c5.png
fileID?x-oss-process=изображение/формат, другие параметры
Описание параметра:
Что следует отметить:
image/resize,w_100/format,jpg
image/reisze,w_100/format,jpg/watermark,...
Вы можете использовать параметр «Изменение качества изображения», чтобы настроить качество изображения при извлечении файлов изображений в облачное хранилище.
Как использовать:
//fileID Пример https://vkceyugu.cdn.bspapp.com/VKCEYUGU-ef89fa94-5d19-4f01-b2b8-edc1f4387edc/b98b33ba-1595-4fda-995a-6c4e17a9e2c5.png
fileID?x-oss-process=изображение/качество, другие параметры
Описание параметра:
Что следует отметить:
Качественное преобразование поддерживает только JPG и WebP, другие форматы изображений не поддерживаются.
Вы можете использовать параметр захвата видеокадра, чтобы получить изображение указанного кадра видеофайла в облачном хранилище.
Как использовать:
//fileID Пример https://vkceyugu.cdn.bspapp.com/VKCEYUGU-ef89fa94-5d19-4f01-b2b8-edc1f4387edc/b98b33ba-1595-4fda-995a-6c4e17a9e2c5.png
fileID?x-oss-process=изображение/снимок, другие параметры
Описание параметра:
Что следует отметить: