【问题标题】:Azure DevOps Team foundation server project board live update?Azure DevOps Team Foundation 服务器项目板实时更新?
【发布时间】:2020-11-11 16:37:04
【问题描述】:

目前,我正在编写自己的应用程序,该应用程序通过 Azure DevOps REST API 5.1 与我的大学拥有的 TFS 进行通信。我正在尝试完成我自己的前端客户端,它将显示和处理带有大量工作项的项目板。我知道如何通过 REST API 创建、更新、获取等工作项,但现在我正在尝试完成实时更新板。这意味着如果其他人更改了看板中的某些内容,这些更改也会立即显示在我的客户端实例上。

这是通过websocket通信实现的吗?如果不是还有什么用?我看到 azure devops 上的应用程序具有 websocket 功能,但我不知道如何在后端连接到 websocket。

我发现了一个叫做 SignalR 服务的东西,需要对它进行一些研究。

感谢您的帮助!

附:我不是来自英语国家,所以我很抱歉我的英语。

【问题讨论】:

  • 您可以在 tfs 中使用 webhook。请查看以下答案。

标签: rest websocket tfs azure-devops workitem


【解决方案1】:

您可以查看service hook 并在 tfs 中创建网络挂钩。 Web 挂钩可以由多个工作项事件(创建/删除/恢复/更新的工作项)触发,以将这些事件的 JSON 表示发送到任何服务。这样您就可以完成实时更新板。

1、首先您需要在您的应用中编写这些端点服务来接收这些由工作项事件触发的帖子。

2、在tfs中创建webhook。转到项目设置-->服务挂钩-->创建订阅-->选择 Web 挂钩

选择一个触发事件(例如,工作项已更新)-->输入您的服务端点 url 和其他信息。

这样当工作项在 tfs 板中更新时。网络挂钩将立即被触发以向您的应用服务发送帖子。然后您的应用服务可以处理收到的帖子并更新您的客户端实例上的更改。

【讨论】:

  • 我在服务器端创建了自己的 webhook,发送工作项更新,然后通过 websockets 与客户端通信。问题是通知 webhook 消息以某种方式排队(不知道确切原因)......在工作项更新和在 webhook 端点上获取消息之间大约有 5-10 秒的延迟。就我的项目而言,这太多了:/ .
猜你喜欢
  • 2011-04-28
  • 1970-01-01
  • 1970-01-01
  • 2011-11-23
  • 1970-01-01
  • 2018-06-01
  • 2020-03-30
  • 2016-06-10
  • 2019-09-27
相关资源
最近更新 更多