如何使用GitHub API删除存储库?

问题描述:

所以我试图从一个虚拟组织中删除一堆回购(我是贡献者),我是所有者。我正在关注GitHub文档 - https://developer.github.com/v3/repos/#delete-a-repository如何使用GitHub API删除存储库?

由于它是GitHub Enterprise帐户,因此URL端点略有不同。

这里是我的卷曲命令,它抛出的错误对我来说:

curl -i -H 'Authorization: token {token}' DELETE 'https://{hostname}/api/v3/repos/{myUsername}/{reponame}'

有什么非常错误的我在干什么?我在这里查找类似的问题后尝试了不同的组合,但似乎没有任何工作。

这里的卷曲输出:

curl: (6) Could not resolve host: DELETE 
HTTP/1.1 404 Not Found 
Server: GitHub.com 
Date: Thu, 14 Sep 2017 16:45:20 GMT 
Content-Type: application/json; charset=utf-8 
Content-Length: 102 
Status: 404 Not Found 
X-OAuth-Scopes: repo, user 
X-Accepted-OAuth-Scopes: repo 
X-GitHub-Media-Type: github.v3; format=json 
Access-Control-Expose-Headers: ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval 
Access-Control-Allow-Origin: * 
X-GitHub-Request-Id: ce484b8e-e6fb-41b3-aaca-65b047be1e3f 
Content-Security-Policy: default-src 'none' 
Strict-Transport-Security: max-age=31536000; includeSubdomains 
X-Content-Type-Options: nosniff 
X-Frame-Options: deny 
X-XSS-Protection: 1; mode=block 

{ 
    "message": "Not Found", 
    "documentation_url": "https://developer.github.com/enterprise/2.9/v3" 
} 

当文件说:

DELETE /repos/:owner/:repo 

它指导你使用HTTP动词“删除”,这是在卷曲用“做-X删除“:

curl -i -X DELETE -H 'Authorization: token {token}' 'https://{hostname}/api/v3/repos/{myUsername}/{reponame}' 

(我没有测试过这个呢,所以可能还有其他的问题,但希望它会帮助一个开始)

+0

它没有:(我仍然得到404!可能是什么问题?它不能是认证/授权,对吗? – Saturnian

你的卷发请求是错误的。下面应该工作:

curl -i -H 'Authorization: token {token}' -X 'DELETE' 'https://{hostname}/api/v3/repos/{myUsername}/{reponame}' 

删除这里是一个HTTP方法就像GET和POST。在curl中,你需要在-X参数中指定HTTP方法。

+0

我试过了,但它仍然没有帮助 - 我收到了与上面相同的响应:(还有什么其他问题呢?当然不是认证/授权...? – Saturnian

+0

看起来您发送请求的API端点无效。存储库{myUsername}/{reponame}是否存在?请在这些行上进行调试 –

+0

我会调查一下!谢谢! – Saturnian