TFS - 给定个人访问令牌,我如何获得我的用户名?
TFS - Given a personal access token, how can I get my username?
我希望能够获得拥有 TFS 个人访问令牌的用户 ID。
我似乎找不到任何执行此操作的 TFS 休息 Web 服务。
我想也许我可以使用“获取我的分支”网络服务并获取分支的所有者,但不幸的是这不起作用,因为“我的分支”通常是由其他人创建的。
这可能吗?
恐怕没有办法通过给定 PAT 来获取创建 PAT 的用户的用户 ID。
但是如果你只是想得到你的userId你可以参考下面的rest api.
你可以看看get team members rest api。如果你是团队中的团队成员。您可以在响应结果中获取您的userId。
GET https://{instance}/{collection}/_apis/projects/{projectId}/teams/{teamId}/members?api-version=5.0
请参阅以下 powershell 脚本中的示例:
$url="https://{instance}/{collection}/_apis/projects/{projectId}/teams/{teamId}/members?api-version=5.0"
$pat='{PAT}'
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($pat)"))
$result1 = Invoke-RestMethod -Uri $url -Headers @{authorization = "Basic $base64AuthInfo"} -Method Get
您可以在网页地址栏获取您团队的TeamId(项目设置-->团队-->Select您所在的团队)
您还可以创建工作项,然后调用 get work item rest api 获取工作项详细信息。您将在响应结果的 System.CreatedBy
字段中看到您的用户 ID。
GET https://{instance}/{collection}/{project}/_apis/wit/workitems/{id}?api-version=5.0
我希望能够获得拥有 TFS 个人访问令牌的用户 ID。
我似乎找不到任何执行此操作的 TFS 休息 Web 服务。
我想也许我可以使用“获取我的分支”网络服务并获取分支的所有者,但不幸的是这不起作用,因为“我的分支”通常是由其他人创建的。
这可能吗?
恐怕没有办法通过给定 PAT 来获取创建 PAT 的用户的用户 ID。
但是如果你只是想得到你的userId你可以参考下面的rest api.
你可以看看get team members rest api。如果你是团队中的团队成员。您可以在响应结果中获取您的userId。
GET https://{instance}/{collection}/_apis/projects/{projectId}/teams/{teamId}/members?api-version=5.0
请参阅以下 powershell 脚本中的示例:
$url="https://{instance}/{collection}/_apis/projects/{projectId}/teams/{teamId}/members?api-version=5.0"
$pat='{PAT}'
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($pat)"))
$result1 = Invoke-RestMethod -Uri $url -Headers @{authorization = "Basic $base64AuthInfo"} -Method Get
您可以在网页地址栏获取您团队的TeamId(项目设置-->团队-->Select您所在的团队)
您还可以创建工作项,然后调用 get work item rest api 获取工作项详细信息。您将在响应结果的 System.CreatedBy
字段中看到您的用户 ID。
GET https://{instance}/{collection}/{project}/_apis/wit/workitems/{id}?api-version=5.0