如何使用新的 azure-devops-extension-sdk 获取项目名称?

How to get the Project name with the new azure-devops-extension-sdk?

older SDK (vss-web-extension-sdk) - we could use VSS.getWebContext() to get the project name and id. I coudln't find a similar method in the newer SDK (azure-devops-extensions-sdk)

如何使用新 azure-devops-extensions-sdk 获取项目名称?

在azure-devops-extension-sdk包中我没有找到可以满足你需要的接口,但是在azure-devops-extension-api包中有一个IProjectInfo interface可以满足你的demand.You可以试试

您也可以尝试从 client-side 扩展调用 REST API 来获取项目名称。这里有rest api作为参考:

curl -u {username}[:{personalaccesstoken}] https://dev.azure.com/{organization}/_apis/projects?api-version=2.0

详情可以参考这篇docs

有样本azure-devops-extension-sample

示例代码:

import * as SDK from "azure-devops-extension-sdk";
import { CommonServiceIds, IProjectPageService } from "azure-devops-extension-api";
const projectService = await SDK.getService<IProjectPageService>(CommonServiceIds.ProjectPageService);
const project = await projectService.getProject();

https://github.com/microsoft/azure-devops-extension-sample/blob/master/src/Samples/Hub/OverviewTab.tsx