12

我正在使用 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 并从那里工作。

我究竟做错了什么?

4

1 回答 1

5

You need to POST the data as stated in the api (http://api.gitlab.org/session.html).

Be aware that if you do this action on a http port (instead of using https) that the password is send in plain text to the server.

于 2014-02-03T12:29:56.433 回答