如何对 bitbucket 云 API 进行身份验证,然后在身份验证后使用它们?

时间:2021-03-27 15:07:08

标签: python bitbucket bitbucket-api bitbucket-cloud

Bitbucket 云 API 有不错的文档,但我找不到展示如何对这些 API 进行身份验证调用的综合示例。

我的要求很简单。作为给定工作区的 bitbucket 云管理员,我想获得该工作区拥有的所有存储库的列表。

我希望能够从我的 Python 后端(一个简单的脚本和其他任何东西)执行此操作。在这种情况下不涉及用户交互。现在浏览了文档和一堆在线资源,似乎有几种方法可以获得身份验证令牌,这(显然)是能够调用任何其他 API 的第一步。

以下是我正在努力解决的一些问题,并且非常感谢您提供的任何意见:(PS:将我指向正确的资源也会有很大帮助。不需要 直接用勺子喂食的答案:) )

  1. 不同的令牌有什么区别?在 Bitbucket 云上,我可以看到 App Tokens 和 Oauth Consumers。在我上面的案例中使用哪一个?对于每个,各自的标头值应该是什么?

  2. 呼叫需要到达的端点是什么?例如,要获取我是管理员的给定工作区中所有存储库的列表,它是 https://api.bitbucket.org/2.0/repositories/ 还是 https:// bitbucket.org//2.0/repositories/ 还是别的什么?

  3. 有来自 Atlassian https://atlassian-python-api.readthedocs.io/index.html 的这个官方 python lib,它似乎在谈论如何完成身份验证对于使用应用程序密码的 Bitbucket 云,类似于使用以下内容:

    bitbucket_app_pw= Cloud(
    url='https://api.bitbucket.org/',
    username=bitbucket_username,
    password=bitbucket_app_password,
    cloud=True)
    

然后列出存储库的相应 API 调用似乎是

bitbucket.project_list()

但是从上面的前一个片段中获得的 bitbucket Cloud 对象(在本例中为 bitbucket_app_pw)似乎没有 project_list方法。 urlCloud() 关键字参数是否应该完全如此,或者只是一个样本 & 实际上应该被替换为类似 https://api.bitbucket.org/<my_workspace_name_here> 我在这里遗漏了什么吗?

0 个答案:

没有答案