如何从VSO存储库获取文件链接

时间:2019-05-23 18:36:52

标签: azure-devops

当我浏览GitHub存储库时,可以从浏览器复制URL,并可以像这样共享它- https://github.com/zlatko-michailov/onesql/blob/master/lang/src/onesql.syntax.ts。文件内容在http响应流中返回,没有任何修饰。

如何为VSO回购做同样的事情?如果我需要稍微调整一下URL,就可以了。

我看到浏览器使用的是此处记录的REST API-https://docs.microsoft.com/en-us/rest/api/azure/devops/git/items/get?view=azure-devops-rest-5.0。我使用了includeContent$formatdownload等不同的组合,但是我只能单独下载内容,而不能在http响应正文中获得。

主题文件是一些CSV数据,客户端是Excel,似乎无法处理下载。

1 个答案:

答案 0 :(得分:0)

我解决了自己的问题。无需创建供稿。

获取原始文件的API为sourceProviders。链接在这里:https://docs.microsoft.com/en-us/rest/api/azure/devops/build/source%20providers/get%20file%20contents?view=azure-devops-rest-5.0

它的文档不是很好-缺少所需参数的示例。棘手的是sourceProvider。它必须是tfsgit。跳过serviceEndpointId对我有用。

以下是模式:

GET https://dev.azure.com/{organization}/{project}/_apis/sourceProviders/tfsgit/filecontents?&repository={repository}&commitOrBranch={commitOrBranch}&path={path}&api-version=5.0-preview.1