JavaでAPIが叩きたい
今回は素のJAVA(SE8)で組んでみたいと思う
使用するAPIはこちら↓
GitHub API v3 | GitHub Developer Guide
これで自分のGist一覧を取得するためのAPIを叩いてみる
叩くだけであってそれで得られたJSONの処理はしない
何故ならできないからだ(`・∀・´)エッヘン!!
まずはコード
import java.io.*;
import java.net.URL;
public class GithubApi {
private static final String API_URL = "https://api.github.com/users/[UserID]/gists"; //叩くAPI
private static URL url = null;
private static BufferedReader br = null;
private static InputStreamReader isr = null;
public static void main ( String[] args ) {
try {
System.out.println( conectGetJson() );
} catch ( Exception e ) {
e.printStackTrace();
}
}
/* 実際にAPIを叩いて得たJSONを文字列として返す
適当に組んでいるのでエラーは投げてます
当然のことながら実際に実装する際は各自で適切な処理を*/
public static String conectGetJson() throws Exception {
url = new URL( API_URL );
String readLine = "";
String writeContent = "";
/* ここから読み込むための定型文 */
isr = new InputStreamReader( url.openStream() );
br = new BufferedReader( isr );
while ( ( readLine = br.readLine() ) != null ) writeContent = writeContent + readLine;//ここで読み込んだ内容を変数に保存している
return writeContent;
}
}
こんな感じですね
相も変わらず読みにくいコード(汗)
コメントの通り、実装の際は適切なエラー処理をお願いしますm(__)m
組んでから気付いたのですが
普通にJavaでHTMLやら読み込むときとまったく同じですね
結局やってることは同じということでしょうか
あえて今回は「APIを叩く」ということに焦点を置きました
本当はJSONのパースまでできたらいいんですけどね
面倒くさそうなので現段階では手を付けていません
楽そうなパースの方法がありましたらコメントしてもらえば嬉しいです