Ruby から GitHub の API (v3) を叩くサンプルコード (Basic 認証)
先輩が GitHub のチームにユーザーを 50 人ぐらい追加しようとしていたので、API 叩いたら楽だろうなー、と思って GitHub の API を叩く方法を調べてみた。
OAuth とか使わないといけなくて面倒な感じなのかなーと思ってたけど、Basic 認証を使わせてくれるので結構気軽に API を叩ける感じだった。
手での登録が速かったので API 叩くコードの出番はなかったけど、そのうち使う機会もあるだろうので、Ruby で API を叩くサンプルコードを置いておく。 以下は、1 つのプロジェクトに 2 つの issue を登録するというもの。
require 'json' require 'net/https' GITHUB_USERNAME = 'YOUR_USERNAME' GITHUB_PASSWORD = 'YOUR_PASSWORD' https = Net::HTTP.new('api.github.com', '443') https.use_ssl = true https.start do |https| # "issue1" というタイトルの issue と "issue2" というタイトルの issue を作る ['issue1', 'issue2'].each do |issue_title| # Issue を作る API: http://developer.github.com/v3/issues/#create-an-issue req = Net::HTTP::Post.new('/repos/nobuoka/xxxxxx/issues') req.basic_auth GITHUB_USERNAME, GITHUB_PASSWORD issue_info = { 'title' => issue_title, } req.body = JSON.generate issue_info p https.request(req) end end