GitLab API v3を使用して、プライベートインストールでいくつかの操作を実行しています。 GETURLでprivate_tokenを使用すると正常に機能します。例えば.
GET http://git.example.com/api/v3/projects?=private_token=xyz123
ただし、これを可能にするには、private_tokenが必要です。アカウント設定から取得する確実な方法が1つあります。しかし、ユーザーが自分の電子メールID /ログインIDとパスワードを使用して秘密鍵を取得し、そこから残りの操作に使用することを望んでいます。
私は次のGETURLを使用しましたが、何もしていません。
GET http://git.example.com/api/v3/session?login=xyzuser&password=xyzpassword
理想的には、GitLabのドキュメントに従って、次のようにJSONを取得する必要があります-
{
"id": 1,
"username": "john_smith",
"email": "[email protected]",
"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を取得してそこから作業できます。
私は何が間違っているのですか?
POST APIに記載されているデータ( http://api.gitlab.org/session.html ))を実行する必要があります。
(httpsを使用する代わりに)httpポートでこのアクションを実行する場合、パスワードはプレーンテキストでサーバーに送信されることに注意してください。