次のように、通常のHTTPURLConnection
リクエストに認証ヘッダーを設定できます。
URL url = new URL(source);
HttpURLConnection connection = this.client.open(url);
connection.setRequestMethod("GET");
connection.setRequestProperty("Authorization", "Bearer " + token);
これはHttpURLConnectionの標準です。上記のコードスニペットthis.client
はSquareのOkHTTPClient
( here )のインスタンスです。
Authヘッダーを設定するOkHTTP
固有の方法はあるのでしょうか。私はOkAuthenticator
クラスを参照していますが、それをどのように使用するか正確にはわかりません/それは認証チャレンジのみを処理するようです。
すべてのポインタを事前に感謝します。
現在のバージョン(2.0.0)を使用している場合は、リクエストにヘッダーを追加できます。
Request request = new Request.Builder()
.url("https://api.yourapi...")
.header("ApiKey", "xxxxxxxx")
.build();
代わりに:
connection.setRequestMethod("GET");
connection.setRequestProperty("ApiKey", "xxxxxxxx");
ただし、古いバージョン(1.x)では、使用する実装がそれを実現する唯一の方法だと思います。 their changelog の言及:
バージョン2.0.0-RC1 2014-05-23
新しいリクエストタイプとレスポンスタイプ。それぞれに独自のビルダーがあります。ネットワークにリクエストボディを書き込むRequestBodyクラスと、ネットワークからレスポンスボディを読み取るResponseBodyもあります。 スタンドアロンのHeadersクラスは、HTTPヘッダーへの完全なアクセスを提供します。