使用 Powershell 循环遍历 Azure DevOps 工作列表结果值不会向控制台打印任何内容
Looping through Azure DevOps Work List Result values with Powershell prints nothing to console
使用以下文档,https://docs.microsoft.com/en-us/rest/api/azure/devops/wit/Work%2520Items/List?view=azure-devops-rest-5.0&viewFallbackFrom=vsts-rest-5.0,我有一个获取工作项列表的 api 调用。
我在我的 devops 构建 yml 中通过 powershell 脚本将其转换为 Json,但循环遍历“值”数组似乎没有向我的 devops 控制台打印任何内容。对语法有帮助吗?
$jsonResp = $($workItemResponse | ConvertTo-Json -Depth 100)
Write-Host "json formatted response"
Write-Host $jsonResp.value
foreach($item in $($jsonResp.value))
{
$releaseNotesHtml += "<div>" + $item.fields.System.Id + "</div>"
Write-Host $item.fields.System.Id
Write-Host $item.fields.System.Title
Write-Host $item.fields.System.State
Write-Host $item.fields.System.Description
}
这个我也试过了,没成功。
foreach($item in $jsonResp.value)
{
$releaseNotesHtml += "<div>" + $item.fields.System.Id + "</div>"
Write-Host $item.fields.System.Id
Write-Host $item.fields.System.Title
Write-Host $item.fields.System.State
Write-Host $item.fields.System.Description
}
使用以下格式:
$token = "<pat>"
$orgurl = "https://dev.azure.com/<org_name>/_apis/wit/workitems?ids=200,250,300&api-version=5.0"
$token = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($token)"))
$wiResponse = Invoke-RestMethod -Uri $orgurl -Headers @{Authorization = "Basic $token"} -Method Get -ContentType application/json
foreach($item in $wiResponse.value)
{
$releaseNotesHtml += "<div>" + $item.id + "</div>"
Write-Host $item.id
Write-Host $item.fields.'System.Title'
Write-Host $item.fields.'System.State'
Write-Host $item.fields.'System.Description'
}
结果:
使用以下文档,https://docs.microsoft.com/en-us/rest/api/azure/devops/wit/Work%2520Items/List?view=azure-devops-rest-5.0&viewFallbackFrom=vsts-rest-5.0,我有一个获取工作项列表的 api 调用。
我在我的 devops 构建 yml 中通过 powershell 脚本将其转换为 Json,但循环遍历“值”数组似乎没有向我的 devops 控制台打印任何内容。对语法有帮助吗?
$jsonResp = $($workItemResponse | ConvertTo-Json -Depth 100)
Write-Host "json formatted response"
Write-Host $jsonResp.value
foreach($item in $($jsonResp.value))
{
$releaseNotesHtml += "<div>" + $item.fields.System.Id + "</div>"
Write-Host $item.fields.System.Id
Write-Host $item.fields.System.Title
Write-Host $item.fields.System.State
Write-Host $item.fields.System.Description
}
这个我也试过了,没成功。
foreach($item in $jsonResp.value)
{
$releaseNotesHtml += "<div>" + $item.fields.System.Id + "</div>"
Write-Host $item.fields.System.Id
Write-Host $item.fields.System.Title
Write-Host $item.fields.System.State
Write-Host $item.fields.System.Description
}
使用以下格式:
$token = "<pat>"
$orgurl = "https://dev.azure.com/<org_name>/_apis/wit/workitems?ids=200,250,300&api-version=5.0"
$token = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($token)"))
$wiResponse = Invoke-RestMethod -Uri $orgurl -Headers @{Authorization = "Basic $token"} -Method Get -ContentType application/json
foreach($item in $wiResponse.value)
{
$releaseNotesHtml += "<div>" + $item.id + "</div>"
Write-Host $item.id
Write-Host $item.fields.'System.Title'
Write-Host $item.fields.'System.State'
Write-Host $item.fields.'System.Description'
}
结果: