【问题标题】:How to create multiple folders using Azure DevOps Rest API如何使用 Azure DevOps Rest API 创建多个文件夹
【发布时间】:2021-08-12 16:11:58
【问题描述】:

我正在使用 Azure DevOps rest api 在 Releases 中创建文件夹。 不确定,如何在同一路径中创建多个文件夹、子文件夹?

代码:

'

Param( 
[string]$organisation = "org", 
[string]$project = "testdatafactory", 
[string]$keepForever = "true", 
[string]$user = "id", 
[string]$token = "token",
[string]$path= "\\") 

$headers = @{Authorization = 'Basic ' + [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(":$($token)")) }

$uri = "https://vsrm.dev.azure.com/$organisation/$project/_apis/release/folders/$path ?api-version=6.0-preview"


Write-Host "Uri :" $uri

$params = 
@"
{
    "createdBy": "id",
    "createdOn": "",
   "description": "test",
   "lastChangedBy": "",
   "lastChangedDate": "",
   "path": "test1"
    }
"@


$result = Invoke-RestMethod -Uri $uri -Method POST -Body $params -Headers $headers -ContentType "application/json" -Verbose -Debug

'

【问题讨论】:

    标签: azure azure-devops azure-pipelines azure-devops-rest-api


    【解决方案1】:

    如何在同一路径中创建多个文件夹、子文件夹?

    恐怕没有这种开箱即用的方式来创建多个文件夹,同一路径中的子文件夹。

    那是因为Folders - Create 没有这样的 Batch REST API。

    作为解决方法,我们可以多次运行 REST API 来创建多个文件夹、子文件夹。

    我们可以使用 REST API:

    POST https://vsrm.dev.azure.com/{organization}/{project}/_apis/release/folders?api-version=6.0-preview.2
    

    然后在请求正文中指定完整路径:

    {
        "path": "\\Master\\test5",
        "createdBy": "id"
    }
    

    测试结果:

    如果我们想在同一路径中创建子文件夹,我们可以指定路径,如:"path": "\\Master\\test5\\subfolder1":

    【讨论】:

      猜你喜欢
      • 2021-05-22
      • 2022-08-12
      • 1970-01-01
      • 2023-03-14
      • 2021-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-26
      相关资源
      最近更新 更多