概要
Apollo GraphQL Client (Android)を動かしてみた際のメモ でAndroidからGraphQLを触っている際、CurlコマンドでGraphQLのエンドポイントを叩きたいケースがしばしばあった。Chromeのデベロッパーツールの「Network」タブには「Copy as Curl」というリクエストをCurlコマンドで出力してくれる機能があるが、Androidでもそういったデバッグ機能がないか探したところ、「Ok2Curl」というライブラリがあった。
利用してみたところ便利だったのでメモ。
利用方法
GithubページのREADMEに従えばOK。
https://github.com/mrmike/Ok2Curl
以下の依存関係を追加
dependencies {
implementation 'com.github.mrmike:ok2curl:0.4.5'
}
使い方は下記のように、InterceptorをOKHttpClientのBuilderに差し込むだけで、CurlコマンドをLogcatに出力できる。
(Kotlin)
OkHttpClient.Builder()
.addInterceptor(CurlInterceptor(Loggable { message -> Log.v("Ok2Curl", message) }))
.build()
(Java)
OkHttpClient okHttp = new OkHttpClient.Builder()
.addInterceptor(new CurlInterceptor(new Loggable() {
@Override
public void log(String message) {
Log.v("Ok2Curl", message);
}
}))
.build();
OKHttpの通信をサクッとCurlにできるので便利。