【问题标题】:Where is the REST API?REST API 在哪里?
【发布时间】:2015-05-14 03:44:16
【问题描述】:

在创建 vNext 版本并尝试从命令行启动它后,我很快意识到它不再受支持。

为了弄清楚如何从 TFS 构建外部启动发布,我偶然发现了这个 post。但是,我在安装发布管理时看不到任何 REST Api。

已安装的组件:

  • 使用更新 4 发布 Team Foundation Server 2013 的管理服务器

我在 IIS 中的设置

下面是我希望在下面看到这些 API 的地方:

http://RMSERVER:PortNumber/account/releaseManagementService/_apis/releaseManagement/OrchestratorService/

我是在寻找该 API 的正确位置还是需要安装其他东西?

【问题讨论】:

  • “看不到”是什么意思?您是否尝试调用 API?
  • 我在 IIS 中看不到 API。我没有拨打任何电话,因为我没有看到在 IIS 中的 ReleaseManagement 下设置的任何网站都遵循我在帖子中看到的模式。
  • 根据他们如何配置路由,您可能在 IIS 下看不到任何内容。按照博文中的说明进行操作。

标签: tfs ms-release-management


【解决方案1】:

丹,

我们通过 Release Management Client 和 Fiddler 了解了 Release Management REST API 的详细信息。看了很多博客和cmets,我们的团队意识到不能直接看到API。 我们了解到,在从客户端开始发布并观看 fiddler 后,我们可以看到所有 API 调用的详细信息

启动发布的 REST API 调用之一:

URL: http://**releaseManagementServer**:**port**/account/releaseManagementService/_apis/releaseManagement/OrchestratorService/InitiateRelease?releaseTemplateName=**releaseTemplateName**&deploymentPropertyBag=**deploymentPropertyBag**&api-version=3.0
Method: POST

以上端点参数:

  • releaseManagementServer
  • 端口(默认:1000)
  • releaseTemplateName
  • deploymentPropertyBag

blog 为您提供有关创建 deploymentPropertyBag 参数的信息。

属性包

{ 
    "Component1:Build" : "Component1Build_20140814.1",
    "Component2:Build" : "Component2Build_20140815.1",                            
    "ReleaseName" : "$releaseName"
}

对于 Release Management Update4 使用 api-version=3.0

【讨论】:

    【解决方案2】:

    这些 API 在物理上并不存在,而是由运行时引擎提供的。如果您使用记录在案的调用,您将可以访问 API。

    注意:大多数 Rest API 并不以您描述的方式实际存在。您可以使用 Fiddler 询问正在运行的 API 以确保可发现性。

    【讨论】:

    • 谢谢你,这正是我最终所做的。 Fiddler 为我们提供了使用 API 并更好地理解博客发布所需的东西。我想了解 API 存在于何处的唯一原因是学习如何正确使用它,但正如我所提到的,我们想到了 Fiddler 并为我们解决了这个问题。
    • 我写了一篇文章解释如何使用 Fiddler 以及如何将其转换为 C# API:codeproject.com/Articles/1031429/…
    猜你喜欢
    • 2019-10-24
    • 1970-01-01
    • 2016-09-24
    • 2013-07-21
    • 2018-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    相关资源
    最近更新 更多