Я пытаюсь загрузить результаты запроса mon go в Azure Хранилище BLOB-объектов с помощью функций Stitch. Ниже приведен минимальный рабочий пример
exports = async function()
{
const { BlobServiceClient } = require('@azure/storage-blob');
const blobServiceClient = await BlobServiceClient.fromConnectionString("AZURE_CONNECTION_STRING");
const containerName = 'test';
const containerClient = await blobServiceClient.getContainerClient(containerName);
// Create a unique name for the blob
const blobName = 'remote_test_file.txt';
// Get a block blob client
const blockBlobClient = containerClient.getBlockBlobClient(blobName);
console.log('\nUploading to Azure storage as blob:\n\t', blobName);
// Upload data to the blob
const data = 'Hello, World!';
const uploadBlobResponse = await blockBlobClient.upload(data, data.length);
console.log("Blob was uploaded successfully. requestId: ", uploadBlobResponse.requestId);
}
. Это работает, если я запускаю его локально, но я получаю следующую ошибку, если пытаюсь запустить его в Mon go Atlas
> error:
failed to eval source for '@azure/storage-blob': failed to eval source for '@azure/core-http': failed to load module 'crypto'
> trace:
StitchError: failed to eval source for '@azure/storage-blob': failed to eval source for '@azure/core-http': failed to load module 'crypto'
at require (<native code>)
at _callee$ (function.js:3:33)
at call (<native code>)
at tryCatch (<anonymous>:55:37)
at invoke (<anonymous>:281:22)
at <anonymous>:107:16
at call (<native code>)
at tryCatch (<anonymous>:55:37)
at invoke (<anonymous>:145:20)
at <anonymous>:180:11
at <anonymous>:3:6
at callInvokeWithMethodAndArg (<unknown>)
at enqueue (<anonymous>:202:13)
at <anonymous>:107:16
at <anonymous>:226:9
at _callee (function.js:1:11)
at apply (<native code>)
at function_wrapper.js:1:11
at <anonymous>:12:1
Кажется, что он не может загрузить crypto
, который является встроенным модулем узла. Есть ли способ обойти это?