问题标签 [bitbucket-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
4516 浏览

python - 使用 Python 的 HTTPBasicAuthHandler 进行 Bitbucket API 身份验证

我正在尝试使用bitbucket 的 API获取私有存储库中的问题列表。

我已经确认 HTTP Basic 身份验证适用于hurl,但我无法在 Python 中进行身份验证。改编本教程中的代码,我编写了以下脚本。

api.get_issues('my_username', 'my_repository')结果是:

api.get_issues('jespern', 'bitbucket')奇迹般有效。

我的代码有什么问题?

0 投票
4 回答
1778 浏览

issue-tracking - 如何通过电子邮件将问题发送到 BitBucket?

我爱BitBucket.org

但是有没有办法将 BitBucket 配置为接受电子邮件并自动将它们放入问题跟踪器中的“新”问题列表中?

BitBucket 发送电子邮件通知,但我想要一些相反的东西。我不想每次有人通过电子邮件向我发送有关问题的电子邮件时都必须手动创建问题。我想将这些电子邮件转发到 Bitbucket,以便问题通过电子邮件直接进入问题跟踪器。

并且:同样,您可以配置 Bitbucket 以便它侦听代码签入并自动神奇地将问题设置为完成/修复等?

有办法吗?

0 投票
2 回答
4006 浏览

javascript - 在 JavaScript 中生成格式良好的 SSH 密钥

我正在用 JavaScript开发一个Bitbucket API 包装器。我正在尝试为添加 SSH 密钥的方法编写测试。我创建可信 SSH 密钥的天真尝试没有成功。这是我生成虚拟密钥的方式:

  1. 以“ssh-rsa”开头
  2. 附加 279 个随机字符串的 Base64 编码表示
  3. 附加“”
  4. 附加一个 16 字符的随机字符串
  5. 附加“@”
  6. 附加一个 16 字符的随机字符串
  7. 附加“.com”

当我POST以这种方式生成的 SSH 密钥时,Bitbucket 返回 400 Bad Request 。幸运的是,我可以访问 Bitbucket 的源代码,所以我能够更深入地挖掘。Bitbucket 通过运行 SSH 密钥来验证它们ssh-keygen

我不明白 SSH 密钥是如何生成的,所以我可能会问一个愚蠢的问题。是否有可能生成一个足以令人信服的 SSH 密钥ssh-keygen?这是输出:

需要明确的是,我不需要生成“有效”的 SSH 密钥,我只需要能够测试各种 API 端点。此外,由于测试在浏览器中运行,我无法生成密钥。

0 投票
3 回答
2681 浏览

api - 使用 BitBucket 的 API 分叉存储库

有什么方法可以使用 BB 的 API 分叉存储库?

根据我在 API 文档上阅读的内容,没有任何明确的文档:https ://confluence.atlassian.com/display/BITBUCKET/Repositories

我的想法是创建一个新的 repo 并指出它是另一个 repo 的分支,因此我可以稍后创建拉取请求。

0 投票
1 回答
2483 浏览

php - 从 BitBucket 请求 OAuth 令牌

在过去的 4 个小时里,我一直在尝试将 BitBucket 集成到我的应用程序中,但无济于事。

在阅读BitBucket 的 RESTful API 文档时,我注意到您需要使用 OAuth — 没关系,我正在使用 JR Conlin 的OAuthSimple库,如果我觉得很好(我尝试了oauth-php,但它有点复杂 — 我没有需要所有这些选项来进行如此小的集成)。

据我了解,使用 OAuth 进行身份验证的第一步是通过 POST 请求新令牌。提供必要的参数时,您应该得到来自 BitBucket 的响应,如下所示:

oauth_token=Z6eEdO8lOmk394WozF9oJyuAv899l4llqo7hhlSLik&oauth_token_secret=Jd79W4OQfb2oJTV0vzGzeXftVAwglnEJ9lumzYcl&oauth_callback_confirmed=true

为此,我使用 cURL 和 OAuthSimple:

问题是,当我发送请求时,会发生以下两种情况之一:

  1. 如果我像张贴在这里一样发送它,我会收到 401 错误(我可以通过 curl_getinfo($ch) 看到)
  2. 如果我设置 curl_setopt($ch, CURLOPT_POST, 1),我会收到 400 Bad request

结果字符串(存储在 中$r)是一个空字符串。这signed_url是一个正确格式的 URL AFAIK,它是这样的:

https://api.bitbucket.org/1.0/oauth/request_token?oauth_callback=http%3A%2F%2Flocalhost%2Fidv&oauth_consumer_key=key_provided_by_bitbucket&oauth_nonce=b47a&oauth_signature=3A1R%2FoKxTqh6Q23poaS%2BVNzhwpE%3D&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1347167282&oauth_version=1.0a

如果我在浏览器的地址栏中手动输入该地址,我将获得 BitBucket API 的身份验证对话框,端口为 443。但我无法使用我的凭据登录。然后它会一直说“无法验证 OAuth 请求”。

我不知道我做错了什么,因为这是我第一次使用 OAuth。

任何帮助表示赞赏!

0 投票
1 回答
861 浏览

php - 使用 php 获取最后一次提交的 zip

我发现下面的代码用于自动部署 php 项目。问题是“https://bitbucket.org/$username/$reponame/get/tip.zip”这个网址在bitbucket private git repo上的private git repo上不起作用:可能与身份验证有关(我还没有测试过这个公共仓库)我需要的是获取最后一次提交的 zip 文件并在我的项目中解压缩。我错过了什么?如何解决此问题

0 投票
1 回答
1010 浏览

oauth - 通过 OAuth 对 Bitbucket API 进行经过身份验证的调用时遇到问题

我正在尝试使用 Oauth 身份验证对 Bitbucket REST API 进行经过身份验证的调用。我已成功检索到一个 oauth_token 和一个 oauth_token_secret(尽管它们与 request_token 和 request_token_secret 相同,这看起来很奇怪但不超出规范)。当我对另一个端点进行 API 调用时,我得到一个 401(未经过身份验证)。我尝试过使用标头身份验证和/或将 oauth_token 和 oauth_token_secret 作为 HTTP 参数传递,结果正常。

这是代码:

0 投票
2 回答
14848 浏览

bitbucket-server - 使用 Stash Rest API 获取原始文件内容

我可以使用 Bitbucket REST API 获取原始文件内容,如

https://api.bitbucket.org/1.0/repositories/AccountName/Repo_Slug/raw/master/MyFolder/MyFile.cs

是否有等效的方法可以使用 Stash Rest API 从 Stash 获取它。我在这里找不到它: https ://developer.atlassian.com/static/rest/stash/2.0.1/stash-rest.html#resources

0 投票
2 回答
2086 浏览

rest - Bitbucket API 公共问题创建

我是否可以让我网站的用户将错误发送到我的 Bitbucket 存储库的问题跟踪器而不将它们重定向到 Bitbucket 页面?

我知道这可以通过身份验证来实现,但是他们可以在没有来自 Bitbucket 站点而不是 API 的身份验证的情况下添加问题似乎很奇怪。

0 投票
1 回答
515 浏览

python - Bitbucket 后管理服务挂钩

我想将提交消息发送到我的网络应用程序。

我正在做以下事情:

  1. 在我的 git 存储库中,添加了一个带有 post url 的 POST 服务

    http://localhost:9000/myGitHook/ 或 http://167.34.56.13:9000/myGitHook/。

在我的 urls.py 我有:

上面的 url 正确映射到以下处理程序:

  1. 修改了一个文件并将其推送到存储库。
  2. 我可以在我的 bitbucket 存储库提交列表中看到提交,但上面的 POST url 甚至没有被触发。
  3. 然后我发现了这个。它说您不能使用 localhost 进行后期服务管理。

除了这些过程,我没有做任何其他事情。

请建议如何在开发环境中执行此操作。

任何形式的帮助将非常感激。

提前致谢。