Gre*_*ian 25 azure azure-devops azure-devops-rest-api
可以在 GitHub 中生成文件原始内容的链接,是否可以使用 VSTS/DevOps?
Zac*_*ten 28
即使在阅读了现有的答案之后,我仍然有点挣扎,所以我想留下更彻底的回应。
正如其他人所说,模式是(查询拆分为单独的行以方便阅读):
https://dev.azure.com/{{organization}}/{{project}}/_apis/sourceProviders/{{providerName}}/filecontents
?repository={{repository}}
&path={{path}}
&commitOrBranch={{commitOrBranch}}
&api-version=5.0-preview.1
Run Code Online (Sandbox Code Playgroud)
但是你如何找到这些变量的值呢?如果您进入 Azure DevOps,从左侧导航中选择 Repos > Files,然后选择一个特定文件,您当前的 url 应如下所示:
https://dev.azure.com/{{organization}}/{{project}}/_git/{{repository}}?path=%2Fpackage.json
Run Code Online (Sandbox Code Playgroud)
您应该将这些值用于组织、项目和存储库。对于路径,您将看到 unix 文件路径的 HTTP 编码版本。 %2F是 的 HTTP 编码/,因此该路径实际上只是/package.json(像Postman这样的工具会为您进行该编码)。
提交或分支是不言自明的;你要么知道你想要什么这个值,要么你应该使用master. 我在上面的 url 中对 api 版本进行了“硬编码”,因为这是文档当前指向的内容。
对于最后一个变量,您需要providerName. 简而言之,您可能应该使用TfsGit. 我通过查看源提供者列表并寻找值为truefor 的提供者获得了这个值supportedCapabilities.queryFileContents。
但是,如果您只是请求此 URL,您将收到“203 Non-Authoritative Information”响应,因为您仍然需要对自己进行身份验证。再次参考相同的文档,它说使用基本身份验证,用户名的任何值和密码的个人访问令牌。您可以在以下位置创建个人访问令牌https://dev.azure.com/{{organization}}/_usersSettings/tokens;确保它具有令牌管理 - 读取和管理权限。
如果您不熟悉这类事情,Postman 再次在您进入代码之前对让这些请求工作非常有帮助。
因此,如果您有一个src在根目录下有一个目录的存储库,并且您正在尝试获取 的文件内容src/package.json,则您的 URL 应该类似于:
https://dev.azure.com/{{organization}}/{{project}}/_apis/sourceProviders/TfsGit/filecontents?repository={{repository}}&commitOrBranch=master&api-version={{api-version}}&path=src%2Fpackage.json
Run Code Online (Sandbox Code Playgroud)
并且不要忘记基本身份验证!
当然,这是所需的休息电话:
GET https://feeds.dev.azure.com/{organization}/_apis/packaging/Feeds/{feedId}/packages/{packageId}?includeAllVersions={includeAllVersions}&includeUrls={includeUrls}&isListed={isListed}&isRelease={isRelease}&includeDeleted={includeDeleted}&includeDescription={includeDescription}&api-version=5.0-preview.1
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以使用 chrome 获取原始 URL。
打开开发人员工具并查看“网络”选项卡。
导航以在 DevOps 门户(内容面板)中查看所需的文件。内容视图可见后,再次检查网络选项卡并找到以“Items?Path”开头的 URL,这是包含所需的“url:”元素的 json 响应。
| 归档时间: |
|
| 查看次数: |
9714 次 |
| 最近记录: |