我正在尝试通过Powershell脚本使用REST API下载TFS构建 Artifact 。我收到401授权错误。有什么我想念的吗?
invoke-webrequest -uri "https://collectionurl/tfs/DefaultCollection/_apis/build/builds/33002/artifacts?artifactName=drop&api-version=2.0&%24format=zip" -OutFile "C:\Temp\drop.zip" -UseDefaultCredentials
也通过浏览器进行了尝试,不断提供凭据弹出窗口。我验证了我的帐户访问权限,一切似乎都很完美。
我正在部署TFS 2018。
最佳答案
您的API看起来不错,似乎只是调用了整个drop文件夹的下载网址。就像这张票:How to get the download url of the artifact in Visual Studio Team Services?
根据您的描述,即使通过浏览器,它仍然会不断提供凭据弹出窗口。
如果是这样,您的问题可能与凭据缓存有关。尝试清除存储在控制 Pane -凭据管理器中的所有TFS凭据缓存。
此外,除了使用帐户/密码,您还可以尝试使用 PAT 。用户名应为空。 PAT是密码。
由于您将PAT与本地TFS服务器一起使用,因此请检查是否已关闭基本身份验证。
关于如何使用Powershell下载构建 Artifact 的更多详细信息,您也可以查看此博客Downloading Build Artifacts in TFS Build