Из-за обесценивания я пытаюсь обновить свой код до следующих двух пакетов:
https://www.npmjs.com/package/@azure/storage-blob https://www.npmjs.com/package/@azure/cosmos а>
Проблема, с которой я сталкиваюсь, заключается в том, что мой код в настоящее время использует пакеты, которые были предварительно асинхронными/ожидающими, тогда как вся документация для более новых пакетов предполагает использование асинхронных функций.
Я хотел бы обновить функции моего кода, но без его реструктуризации с помощью асинхронных функций. Есть ли какая-либо документация о том, как это сделать? Или какие-нибудь понятные и простые примеры?
Например, я использую этот пример для загрузки большого двоичного объекта:
const { DefaultAzureCredential } = require("@azure/identity");
const { BlobServiceClient } = require("@azure/storage-blob");
const account = "<account>";
const defaultAzureCredential = new DefaultAzureCredential();
const blobServiceClient = new BlobServiceClient(
`https://${account}.blob.core.windows.net`,
defaultAzureCredential
);
const containerName = "<container name>";
async function main() {
const containerClient = blobServiceClient.getContainerClient(containerName);
const content = "Hello world!";
const blobName = "newblob" + new Date().getTime();
const blockBlobClient = containerClient.getBlockBlobClient(blobName);
const uploadBlobResponse = await blockBlobClient.upload(content, content.length);
console.log(`Upload block blob ${blobName} successfully`, uploadBlobResponse.requestId);
}
main();
Я хотел бы сделать это без async/await, а для blockBlobClient.upload
использовать function(err, result){ do stuff}
, поскольку мой код уже есть.
Точно так же я хотел бы сделать это с функциями @azure/cosmos
.
Мои текущие пакеты:
https://www.npmjs.com/package/documentdb https://www.npmjs.com/package/azure-storage
Это возможно?
Я действительно предпочел бы не реструктурировать весь свой код...
Спасибо