【发布时间】:2020-04-04 23:41:08
【问题描述】:
我们正在我们的环境中运行 TFS 2018 Update 2。
我们正在将找到的示例 json here 发送到我们的服务器,它被成功接受:
{
"properties": {
"sampleId": 7,
"customInfo": "Custom status information",
"startedDateTime": {
"$type": "System.DateTime",
"$value": "2017-09-19T14:50:26.7410146Z"
},
"weight": {
"$type": "System.Double",
"$value": 1.75
},
"bytes": {
"$type": "System.Byte[]",
"$value": "dGhpcyBpcyBzYW1wbGUgYmFzZTY0IGVuY29kZWQgc3RyaW5n"
},
"globalId": {
"$type": "System.Guid",
"$value": "1e788cb9-9d3d-4dc6-ac05-822092d17f90"
}
},
"state": "succeeded",
"description": "Sample status succeeded",
"context": {
"name": "sample-status-1",
"genre": "vsts-samples"
},
"targetUrl": "http://fabrikam-fiber-inc.com/CI/builds/1"
}
但响应看起来不像文档中的那样。相反,它看起来像这样:
{
"id": 6,
"state": "succeeded",
"description": "Sample status succeeded",
"context": {
"name": "sample-status-1",
"genre": "vsts-samples"
},
"creationDate": "2019-12-11T16:14:05.0574648Z",
"updatedDate": "2019-12-11T16:14:05.0574648Z",
"createdBy": {
"displayName": "...",
"url": "https://.../_apis/Identities/0b85e078-130d-4cb8-a450-17c5c7efccec",
"_links": {
"avatar": {
"href": "https://.../_api/_common/identityImage?id=0b85e078-130d-4cb8-a450-17c5c7efccec"
}
},
"id": "0b85e078-130d-4cb8-a450-17c5c7efccec",
"uniqueName": "...",
"imageUrl": "https://.../_api/_common/identityImage?id=0b85e078-130d-4cb8-a450-17c5c7efccec"
},
"targetUrl": "http://fabrikam-fiber-inc.com/CI/builds/1",
"_links": {
"self": {
"href": "https://.../_apis/git/repositories/35fe73eb-7af1-4bba-bf04-545611fcac1d/pullRequests/58/statuses/6"
},
"repository": {
"href": "https://.../_apis/git/repositories/35fe73eb-7af1-4bba-bf04-545611fcac1d"
}
}
}
属性消失了。有什么问题? 它会不会是一个完全误导性的文档?
【问题讨论】:
-
您好,朋友,我在 TFS2018 Update3 中测试了其余的 api,它可以工作。如果你使用完成的、活跃的、草稿的拉取请求,结果是什么?有什么区别吗?
-
嗨@LanceLi-MSFT,活动拉取请求的结果在上面的问题中。在已完成的情况下,我收到错误消息“请求的拉取请求状态无法更新,因为它需要一个活动的拉取请求”(这是有道理的)。我不知道什么是 pull request 草案。
-
我的意思是当有人批准它并选择将其标记为草稿状态时。但这不是我们应该检查的重点,因为如果您使用的是活动的拉取请求 ID,我确信我所有使用相同脚本的测试都可以在 TFS rest api 或 Azure Devops api 中工作......我做了测试它使用邮递员。您能否分享一些有关如何格式化 http 请求的详细信息。(将个人信息替换为 xxx 以保护个人信息)
-
据我的同事说,草稿 pr 仅适用于新的 Azure devops 服务器。您 100% 确定更新 2 和 3 之间没有变化吗?关于我的 http 请求:我确实使用了 Insomnia。身体看起来和我在上面展示的一模一样。就我而言,我使用了 NTLM 身份验证。内容类型设置为 application/json。整个请求可以在以下位置找到:pastebin.com/raw/zJGusdQ4
-
抱歉耽搁了。我不确定将 tfs 更新为 update3 是否可以解决此问题。我现在正在尝试使用 tfs update2 配置新机器以检查是否可以重现该问题,这可能需要一些时间。如果可能的话,您能否在您的 tfs 中创建一个新集合并使用免费邮递员对其进行测试?我想检查使用邮递员进行测试是否有什么不同。 ps:我会用tfs u2测试一下,尽快在这里回复:)