Сохранение файлов JSON напрямую в хранилище BLOB-объектов с помощью PowerShell - PullRequest
1 голос
/ 29 сентября 2019

Я бы хотел сохранить файлы JSON из вызова API напрямую в хранилище BLOB-объектов, а не сохранять их в локальной папке и передавать их в хранилище BLOB-объектов.

Мой код ниже вызывает API, а затем сохраняет его в локальной папке. Можно ли сохранить его непосредственно в хранилище BLOB-объектов через PowerShell

$logPath = 'C:\Dev\Template\Test'

$access_token ="Access_Token"

$URI =  "https://XXXXX"
$headers = @{“authorization” = “Bearer $access_token”} 
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$result = Invoke-RestMethod -Uri $URI -Headers $headers -ContentType $ContentType |ConvertTo-Json
$Result|ConvertFrom-Json| Select -ExpandProperty Forms| Out-File "$logPath\$report_iu.json"

1 Ответ

0 голосов
/ 30 сентября 2019

Вы можете преобразовать результат в json и использовать UploadText , чтобы загрузить его в хранилище Azure.

#get the json
$result = Invoke-RestMethod -Uri $URI -Headers $headers -ContentType $ContentType |ConvertTo-Json

#load the blob storage module
[System.Reflection.Assembly]::LoadFile("D:\FIle\Microsoft.WindowsAzure.Storage.dll")
$connstr="DefaultEndpointsProtocol=https;AccountNamexxx;AccountKey=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx;EndpointSuffix=core.windows.net"
$storageAccount = [microsoft.windowsazure.storage.cloudstorageaccount]::parse($connstr)
$blobclient=$storageAccount.CreateCloudBlobClient()
$cloudBlobContainer = $blobclient.GetContainerReference("mycontainer")
$cloudBlockBlob = $cloudBlobContainer.GetBlockBlobReference("my.json")

#upload json to blob storage
$cloudBlockBlob.UploadText($result)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...