-2

基本的に、github リポジトリへのリンクのリストを収集し、readme の場合はリストをフリックできるようにしたいと考えています。これを行うものを知っている人はいますか?

4

1 に答える 1

0

GitHub の Web APIを使用できます。

Spoon-Knifeリポジトリでデモを行います。

最初に、readme ファイルを取得するように要求します (もちろん、octocat/Spoon-Knife必要なユーザー名とレポ名に置き換えます)。

$ curl "https://api.github.com/repos/octocat/Spoon-Knife/readme"
{
  "type": "file",
  "html_url": "https://github.com/octocat/Spoon-Knife/blob/master/README",
  "_links": {
    "html": "https://github.com/octocat/Spoon-Knife/blob/master/README",
    "git": "https://api.github.com/repos/octocat/Spoon-Knife/git/blobs/c8f68c2fd5a340b5ec89ada61984254e31c6785d",
    "self": "https://api.github.com/repos/octocat/Spoon-Knife/contents/README"
  },
  "url": "https://api.github.com/repos/octocat/Spoon-Knife/contents/README",
  "path": "README",
  "git_url": "https://api.github.com/repos/octocat/Spoon-Knife/git/blobs/c8f68c2fd5a340b5ec89ada61984254e31c6785d",
  "content": "QWxsIHRoYXQncyBtaXNzaW5nIGlzIHRoZSBmb3JrLiBIZWgu\n",
  "sha": "c8f68c2fd5a340b5ec89ada61984254e31c6785d",
  "encoding": "base64",
  "size": 36,
  "name": "README"
}

フィールドに注目してくださいhtml_url。これは、GitHub Web-GUI 表示内のファイルへの HTML リンクです。ただし、ファイルの内容のみが必要なため、次のように変更blobする必要がありrawます。

$ curl "https://raw.github.com/octocat/Spoon-Knife/master/README"
All that's missing is the fork. Heh.

curlもちろん、 GitHub サーバーにクエリを実行する代わりに、使用しているプログラミング言語の HTTP 機能を使用することをお勧めします。

編集

追加の GET リクエストを作成する代わりにcontent、base64 デコーダーを使用してフィールドをデコードできます。

$ echo QWxsIHRoYXQncyBtaXNzaW5nIGlzIHRoZSBmb3JrLiBIZWgu | base64 --decode
All that's missing is the fork. Heh.
于 2012-11-03T17:03:37.097 に答える