У меня есть следующая строка кода, которая дает мне значение URL и имя в каждом цикле. Я хотел бы получить все эти значения (URL и имя) и использовать их ниже в своем html для отображения на странице. Прямо сейчас один URL-адрес хорошо отображается на странице, но я не уверен, как отображать и отображать список элементов.
Мой код:
Get-ChildItem $workingDir | ForEach-Object {
$uploadResponse = UPLOAD-FILE -workingDir $_.FullName -tempDir $tempDirectory -clientId $CLIENT_ID -clientSecret $CLIENT_SECRET -artifactname $artifactname
$url = $uploadResponse.url
$name = $uploadResponse.name
}
HTML, где я помещаю URL и имя в один и тот же метод в коде:
$OVERVIEW_PAGE_BODY_CONTENT = "<!DOCTYPE html>
`n<html>
`n<head>
`n <title>Release Notes</title>
`n</head>
`n<body>
`n<p>Please click on this <a href = " + $uploadResponse.webUrl + ">$($uploadResponse.name)</a> to download the release.</p>
`n</body>
`n</html>
ответ от UPLOAD-файла:
@{@odata.context=https://test.sharepoint.com/sites/Software/_api/v2.0/$metadata#items/$entity; @odata.type=#oneDrive.item; @odata.id=https://test.sharepoint.com/sites/Software/_api/v2.0/drives/b!oXTiJap3vEWP-R7VIhCoaK56Iw5F_2s7Jm/items/01DF22DBTHCTY; @odata.editLink=drives/b!oXTiJap3vEWP-R7VIhCoaK5C9VpM6whOqv92LwAtEd0vz2KXW2FnS6Iw5F_2s7Jm/items/01DF2VRVTLJT24SRAGJVHZSOUT2DBTHCTY; @content.downloadUrl=https://test.sharepoint.com/sites/Software/_layouts/15/download.aspx?UniqueId=c9f54c6b-0644-4f4d-993a-93d0c3338a78&Translate=false&tempauth=eyJ0eXAiOiJKV1oiYmY0NmQzNjAtZTAIjoiYWxsc2l0ZXMuZnVsbGNvbnRyb2wd2xBWT0&ApiVersion=2.0; createdBy=; createdDateTime=2020-12-10T17:04:06Z; eTag = "{C9F54C6B-0644-4F4D-993A-93D0C3338A78},6"; id=01DHZSOUT2DBTHCTY; lastModifiedBy=; lastModifiedDateTime=2020-12-10T19:41:05Z; name=Archives.zip; parentReference=; webUrl=https://test.sharepoint.com/sites/Software/TestPipelineAutomation/Archives.zip; cTag = "c:{C9F54C6B-0644-4F4D-993A-93D0C3338A78},5"; file=; fileSystemInfo=; size=7309}
См. О правилах цитирования и О присоединении:
$Data = ConvertFrom-Csv @'
Name,WebUrl
Name1,Url1
Name2,Url2
Name3,Url3
'@
$OVERVIEW_PAGE_BODY_CONTENT = @(
@'
<!DOCTYPE html>
<html>
<head>
<title>Release Notes</title>
</head>
<body>
'@
# Get-ChildItem $workingDir | ForEach-Object {
# $uploadResponse = UPLOAD-FILE -workingDir $_.FullName -tempDir $tempDirectory -clientId $CLIENT_ID -clientSecret $CLIENT_SECRET -artifactname $artifactname
Foreach ($uploadResponse in $Data) {
"<p>Please click on this <a href = ""$($uploadResponse.webUrl)"">$($uploadResponse.name)</a> to download the release.</p>"
}
@'
</body>
</html>
'@
) -Join [System.Environment]::NewLine
Я понимаю это, но вопрос в том, как я могу сначала получить все значения, а затем показать их в HTML. Я понимаю ваше второе замечание, но во-первых, это все еще неясно, и на самом деле это то, с чем я борюсь.
ФАЙЛ ЗАГРУЗКИ вызывает API и возвращает массив json, в котором меня интересуют значения $uploadResponse.name и $uploadResponse.url
обновлен образцом ответа от UPLOAD-FILE:
Загрузить файл — это метод, который загружает мои файлы и папки из рабочего каталога в SharePoint. Я готовлю здесь блокнот, чтобы получить ссылки на файл, в который он загружен, и имя файла. я обновил вопрос с ответом json
Пожалуйста, покажите содержимое сериализованного файла json (как показано, например, здесь: learn.microsoft.com/en-us/odata/concepts/get-data ), а не отображаемый децентрализованный объект (я не могу восстановить json файл или объект из этой информации)
как добавить Name1 и URL1 в $Data??