其余 API - 放置或修补



我正在尝试使用Rest API来更改使用powershell构建TFS2017中的值。我让它在 Postman 中工作,但我使用的是 PUT 方法,该方法要求您指定每个值才能更新构建。

我正在尝试找到一个解决方案,该解决方案将更新一个变量,而其他所有内容保持不变。我不确定我的端点是否正确。这就是我所拥有的

http://MyTFS:8080/tfs/DefaultCollection/Project/_apis/build/definitions/MyBuildID?api-version=3.0

当我运行 GET 时,我有:

*A bunch of text*
"variables": {
"system.debug": {
"value": "false",
"allowOverride": true
},
"BuildVersion": {
"value": "ValueIWantToChange"
}
},
*A bunch of text*

我已经成功地使用了 put 方法,只要变量的数量不多,我不介意使用它。我尝试使用补丁方法,但它不受支持。

我唯一想更改的是构建版本。我需要一个简单的请求来更新该值。这是我第一次使用 REST API 调用,所以如果这太简单,我很抱歉。

编辑:当我运行补丁时,我只是得到"请求的资源不支持http方法'PATCH'"。也许我在这里出错了?对于请求,我的 json 正文如下所示:

{
"Variables":
{
"BuildVersion": 
{
"value": "ValueToChangeTo"
}
}
}

我认为值得一提的是,当我设置 Powershell 以运行 PUT 命令时,我也会收到相同的错误。PUT 在邮递员中工作正常,所以我看不出问题是什么。

自描述 API 很棒 - 信息丰富的错误消息甚至更好! 看起来您用错误消息回答了自己的问题:

"The requested resource does not support http method 'PATCH'"

看起来它根本不支持 PATCH(这很常见(。

最新更新