我正在使用GitLab API v3在我的私有安装上执行一些操作.在GET URL中使用private_token工作正常.例如
GET http://git.example.com/api/v3/projects?=private_token=xyz123
但为了使这成为可能,你需要一个private_token.有一种可靠的方法来获取它 - 从您的帐户设置.但我希望我的用户使用他们的电子邮件ID /登录ID和密码来检索私钥,并从那里使用它来进行其余的操作.
我使用了以下GET url,它对我没有任何作用:
GET http://git.example.com/api/v3/session?login=xyzuser&password=xyzpassword
理想情况下,根据GitLab文档,我应该获得如下的JSON -
{ "id": 1, "username": "john_smith", "email": "john@example.com", "name": "John Smith", "private_token": "dd34asd13as", "blocked": false, "created_at": "2012-05-23T08:00:58Z", "bio": null, "skype": "", "linkedin": "", "twitter": "", "dark_scheme": false, "theme_id": 1, "is_admin": false, "can_create_group" : true, "can_create_team" : true, "can_create_project" : true }
如果我得到这个,我可以获得private_token并从那里工作.
我究竟做错了什么?
您需要按照api(http://api.gitlab.org/session.html)中的说明发布数据.
请注意,如果您在http端口(而不是使用https)上执行此操作,则密码将以纯文本形式发送到服务器.