使用 VSTS Rest API,如何创建 Markdown 小部件?
Using VSTS Rest API, how do you create a Markdown widget?
我正在尝试使用 this REST API 在 VSTS 的仪表板上创建(或更新...同样的问题)一个 "Markdown" 小部件。
POST https://{accountName}.visualstudio.com/{project}/{team}/_apis/dashboard/dashboards/{dashboardId}/widgets?api-version=5.0-preview.2
使用下面的 JSON
正文,根据示例,我不断收到 eTag
错误?我也试过更新现有的 Markdown Widget 但没有成功,所以这就是我转而删除和创建的原因。
{
"name": "Markdown",
"position": {
"row": 1,
"column": 4
},
"size": {
"rowSpan": 2,
"columnSpan": 2
},
"settings": "# AK Markdown\nAdd content using the markdown widget.\n- **Bold**\n- *Italic*\n- [Links]()",
"settingsVersion": {
"major": 1,
"minor": 0,
"patch": 0
},
"dashboard": {
"eTag": "18"
},
"contributionId": "ms.vss-dashboards-web.Microsoft.VisualStudioOnline.Dashboards.MarkdownWidget"
}
请参阅下面的 Fiddler Request
/Response
屏幕截图。
我的目标是在各种 Build/Releases 的末尾,我想要 create/update 一个带有 markdown 的小部件,显示我们 users/stakeholders 的特定数据。许多不熟悉 VSTS 的人。
当add/create一个新的widget,position和eTag时,有一些原因会抛出407冲突错误,例如,如果已经有一个widget在相同的位置,那么它会抛出错误如果你add/create 一个新的小部件再次到该位置,因此您需要确保目标位置没有小部件
注意:小部件的大小会影响其他小部件的位置,例如小部件的位置是column:1; row:2,大小为rowSpan:2,那么下一个widget的位置可以是column:3; row:2,但不能column:2; row:2
处理此问题的简单方法是从 json 数据中删除位置 属性。
关于eTag值,可以调用Get a dashboard REST API,结果包含eTag 属性,在其他REST上使用此值即可API , 此外,您可以在创建小部件时从 json 数据中删除仪表板 属性。
关于更新widget,你可以调用Get Widget REST API,然后结果包含eTags和dashboard属性,之后使用这些值在更新小部件 REST API.
我正在尝试使用 this REST API 在 VSTS 的仪表板上创建(或更新...同样的问题)一个 "Markdown" 小部件。
POST https://{accountName}.visualstudio.com/{project}/{team}/_apis/dashboard/dashboards/{dashboardId}/widgets?api-version=5.0-preview.2
使用下面的 JSON
正文,根据示例,我不断收到 eTag
错误?我也试过更新现有的 Markdown Widget 但没有成功,所以这就是我转而删除和创建的原因。
{
"name": "Markdown",
"position": {
"row": 1,
"column": 4
},
"size": {
"rowSpan": 2,
"columnSpan": 2
},
"settings": "# AK Markdown\nAdd content using the markdown widget.\n- **Bold**\n- *Italic*\n- [Links]()",
"settingsVersion": {
"major": 1,
"minor": 0,
"patch": 0
},
"dashboard": {
"eTag": "18"
},
"contributionId": "ms.vss-dashboards-web.Microsoft.VisualStudioOnline.Dashboards.MarkdownWidget"
}
请参阅下面的 Fiddler Request
/Response
屏幕截图。
我的目标是在各种 Build/Releases 的末尾,我想要 create/update 一个带有 markdown 的小部件,显示我们 users/stakeholders 的特定数据。许多不熟悉 VSTS 的人。
当add/create一个新的widget,position和eTag时,有一些原因会抛出407冲突错误,例如,如果已经有一个widget在相同的位置,那么它会抛出错误如果你add/create 一个新的小部件再次到该位置,因此您需要确保目标位置没有小部件
注意:小部件的大小会影响其他小部件的位置,例如小部件的位置是column:1; row:2,大小为rowSpan:2,那么下一个widget的位置可以是column:3; row:2,但不能column:2; row:2
处理此问题的简单方法是从 json 数据中删除位置 属性。
关于eTag值,可以调用Get a dashboard REST API,结果包含eTag 属性,在其他REST上使用此值即可API , 此外,您可以在创建小部件时从 json 数据中删除仪表板 属性。
关于更新widget,你可以调用Get Widget REST API,然后结果包含eTags和dashboard属性,之后使用这些值在更新小部件 REST API.