如何使用API​​创建GitHub Gist?

时间:2013-09-06 22:07:51

标签: php api github gist

通过查看GitHub Gist API,我了解到可以为没有任何API密钥/身份验证的匿名用户创建Gist创建。是这样吗?

我无法找到以下问题的答案:

  1. 是否有任何限制(要点数量)等?
  2. 是否有任何示例可以从表单文本输入字段发布代码来创建要点?我找不到任何。
  3. 感谢您提供有关此事的任何信息。

1 个答案:

答案 0 :(得分:7)

是。

来自Github API V3文档:

  

对于使用基本身份验证或OAuth的请求,您每小时最多可以处理5,000个请求。对于未经身份验证的请求,速率限制允许您每小时最多发出60个请求。

要创建要点,您可以按如下方式发送POST请求:

POST /gists

这是我做的一个例子:

<?php
if (isset($_POST['button'])) 
{    
    $code = $_POST['code'];

    # Creating the array
    $data = array(
        'description' => 'description for your gist',
        'public' => 1,
        'files' => array(
            'foo.php' => array('content' => 'sdsd'),
        ),
    );                               
    $data_string = json_encode($data);

    # Sending the data using cURL
    $url = 'https://api.github.com/gists';
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($ch);
    curl_close($ch);

    # Parsing the response
    $decoded = json_decode($response, TRUE);
    $gistlink = $decoded['html_url'];

    echo $gistlink;    
}
?>

<form action="" method="post">
Code: 
<textarea name="code" cols="25" rows="10"/> </textarea>
<input type="submit" name="button"/>
</form>

有关详细信息,请参阅documentation