如何使用Bitbucket REST API删除分支

时间:2018-04-24 16:46:39

标签: git bitbucket bitbucket-api

使用 postman ,我已经成功通过他们的REST API在bitbucket中创建分支并使用下面的指南

Bitbucket Rest API Guide

但我也不能使用相同的指南删除分支。

我创建了一个JSON并将其放在POSTMAN的 body 标签中,然后使用 DELETE 作为HTTP方法,但没有成功。

我收到错误 405 - 方法不允许,这是什么意思?我的请求是否已被推迟但我不被允许?

使用bitbucket Web UI,我可以删除并创建分支。

编辑:

这是邮差生成的CURL

curl -X DELETE https://<url>/rest/api/1.0/projects/<abc>/repos/<xyz>/branches 
-H 'authorization: Bearer xxxxxx' -H 'cache-control: no-cache' 
-H 'content-type: application/json'  
-H 'x-atlassian-token: nocheck' 
-d '{"name": "refs/heads/feature/name","dryRun": false}'

1 个答案:

答案 0 :(得分:4)

看起来您正在使用不正确的REST端点,该端点不接受DELETE HTTP谓词。你正在使用的是:

/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/branches

根据the docs,此端点仅接受GETPOST s

根据你的电话格式来判断,我猜你实际上是这样的:

/rest/branch-utils/1.0/projects/{projectKey}/repos/{repositorySlug}/branches

branch-utils API docs或多或少地描述了您尝试使用的确切有效负载。

深入挖掘,我相信这个错误不是你的错。 Bitbucket 5.8及更低版本的Bitbucket分支util文档显示了正确的URL路径,但是对于5.9及以上the path seems to be missing

完全披露:我为Atlassian工作。在这种情况下,我会追逐它,并纠正:)

编辑:文档已经修复了!