我正在尝试使用Azure Dev Ops rest API从我的azure dev ops站点上的Wiki检索所有Wiki页面。虽然我可以通过以下方式检索主要Wiki: https://dev.azure.com/ {项目名称} / _ apis / wiki / wikis / {wiki标识符} /
如果我这样添加/ pages: https://dev.azure.com/ {项目名称} / _ apis / wiki / wikis / {wiki标识符} /页面
就像在文档上说的那样,我得到一个404页面未找到错误。我还有更多需要的字段吗?我当前传递的唯一标头是我的PAT。
答案 0 :(得分:1)
您可以尝试使用此api:
Get https://dev.azure.com/{org name}/{project name}/_apis/wiki/wikis/{wikiIdentifier}/pages?path=/&recursionLevel=OneLevel&api-version=5.1
注意:如果要列出所有维基页面,则需要在URL中指定recursionLevel
的值。这是关键字,用于指定子页面检索的递归级别。
有关此递归级别的更多详细信息:
您也可以参考此文档:Get page as JSON with recursion level了解更多示例。
此外,对于以编程方式列出具有REST API的Wiki页面,这里有一个示例,可以使用powershell执行该示例以供您参考:
$uri = "https://dev.azure.com/{org name}/{project name}/_apis/wiki/wikis/{wikiIdentifier}/pages?path=/&recursionLevel=OneLevel&api-version=5.1"
$connectionToken="{Your PAT token}"
$base64AuthInfo = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
$projects = Invoke-RestMethod -Uri $uri -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Method GET
Write-Host "Pipeline = $($projects| ConvertTo-Json -Depth 100)"