【问题标题】:How can I call pre-release Rest Apis from an Azure DevOps extension?如何从 Azure DevOps 扩展调用预发布的 Rest API?
【发布时间】:2019-12-30 22:39:48
【问题描述】:

Azure DevOps REST API 预览版的 seems REST 客户端未发布。所以有 API 和 works,但没有 REST 客户端。

那么我如何访问例如来自 Azure DevOps 扩展的 6.0(截至目前:预览版)功能 pagesBatch

【问题讨论】:

    标签: azure-devops azure-devops-rest-api azure-devops-extensions


    【解决方案1】:

    因为它是一个预览 API,还没有包含在 SDK 中,所以您可以使用 Typescript 执行纯 HTTP Get/Post Rest API 调用,例如:

    安装:

    npm install --save request
    npm install --save request-promise-native
    

    然后在扩展中:

    import * as request from "request-promise-native";
    
    (async () => {
    
      const url = 'https://dev.azure.com/fabrikam/e5e9e01e-801a-47eb-80bb-0ad24f448abe/_apis/wiki/wikis/sampleProjectWiki/pagesBatch';
      const result = await request.post(url, access_token: 'your-pat', body: JSON.stringify({pageViewsForDays: '30', continuationToken: '1', top: '5', 'content_type': 'application/json' }}}) );
    
    
     })()
    

    或者使用其他的 Rest API 方法,在 Typescript 上有很多方法。

    【讨论】:

    • 谢谢 - 但您不需要提供 PAT(个人访问令牌)吗?我相信,当扩展使用 RestClient 时,会得到处理。这就是我回避直接 http 请求的原因。
    • 你是对的,我猜你需要提供一个令牌或使用运行扩展的用户凭据。
    猜你喜欢
    • 2020-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-23
    • 2023-03-16
    相关资源
    最近更新 更多