Header HTTP Kustom dengan HttpClient

1. Ikhtisar

Dalam tutorial ini, kita akan melihat cara menyetel tajuk khusus dengan HttpClient.

Jika Anda ingin menggali lebih dalam dan mempelajari hal-hal keren lainnya yang dapat Anda lakukan dengan HttpClient - lanjutkan ke tutorial HttpClient utama.

2. Set Header on Request - 4.3 dan Di Atas

HttpClient 4.3 telah memperkenalkan cara baru untuk membuat permintaan - RequestBuilder . Untuk menyetel tajuk, kita akan menggunakan metode setHeader - di pembuat:

HttpClient client = HttpClients.custom().build(); HttpUriRequest request = RequestBuilder.get() .setUri(SAMPLE_URL) .setHeader(HttpHeaders.CONTENT_TYPE, "application/json") .build(); client.execute(request);

3. Atur Header berdasarkan Permintaan - Sebelum 4.3

Di versi sebelum 4.3 HttpClient, kita dapat menyetel header kustom apa pun pada permintaan dengan panggilan setHeader sederhana berdasarkan permintaan:

HttpClient client = new DefaultHttpClient(); HttpGet request = new HttpGet(SAMPLE_URL); request.setHeader(HttpHeaders.CONTENT_TYPE, "application/json"); client.execute(request);

Seperti yang bisa kita lihat, kita mengatur Content-Type secara langsung pada permintaan ke nilai khusus - JSON.

4. Tetapkan Header Default pada Klien

Alih-alih mengatur Header pada setiap permintaan, kami juga dapat mengkonfigurasinya sebagai header default pada Klien itu sendiri:

Header header = new BasicHeader(HttpHeaders.CONTENT_TYPE, "application/json"); List headers = Lists.newArrayList(header); HttpClient client = HttpClients.custom().setDefaultHeaders(headers).build(); HttpUriRequest request = RequestBuilder.get().setUri(SAMPLE_URL).build(); client.execute(request);

Ini sangat membantu saat header harus sama untuk semua permintaan - seperti header aplikasi kustom.

5. Kesimpulan

Artikel ini mengilustrasikan cara menambahkan header HTTP ke satu atau semua permintaan yang dikirim melalui Apache HttpClient.

Penerapan semua contoh dan cuplikan kode ini dapat ditemukan di proyek GitHub.