以下API返回特定软件包的所有版本。为了获得该软件包的最新版本,我可以使用返回的响应中的isLatest:true数据。
但是我想知道是否有办法仅在响应中获取最新版本,而不是所有版本?可能吗?
如果没有这种可能性,那么请问第二个问题-最新版本是否总是答复中的第一项?(我假设退货数量有限制(1000?),所以我想知道如果需要获取最新版本的API调用是否总是足够的。
如果没有这种可能性,那么请问第二个问题-最新版本是否总是答复中的第一项?
答案是肯定的。最新版本始终是响应中的第一项。
作为测试,我发表一个测试包,我的版本的饲料1.0.0
,2.0.0
,然后公布的版本1.0.1-preview1.2
,1.0.1
。但是,Azure开发人员将按照程序包版本进行排序:
因此,我们可以使用带有powershell参数的REST APISelect-Object -first 1
来获取最新的软件包版本:
$connectionToken="Your PAT"
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
$url = 'GET https://feeds.dev.azure.com/{organization}/{project}/_apis/packaging/Feeds/{feedId}/Packages/{packageId}/versions?api-version=6.0-preview.1
'
$PackageInfo = (Invoke-RestMethod -Uri $url -Method Get -UseDefaultCredential -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)})
$LatestVersion= $PackageInfo.value.version | Select-Object -first 1
Write-Host "Latest package Version = $LatestVersion"
测试结果:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句