Apidog

Platform Pengembangan API Kolaboratif All-in-one

Desain API

Dokumentasi API

Debug API

Mocking API

Pengujian Otomatis

Cara membuat Permintaan GET API Axios dengan Body dan Header

Pelajari cara pakai Axios untuk permintaan API dengan body & header. Contoh, tips & trik.

Ardianto Nugroho

Ardianto Nugroho

Updated on April 15, 2025

API (Application Programming Interfaces) memainkan peran penting. Mereka memungkinkan aplikasi untuk berkomunikasi dengan layanan eksternal, mengambil data, dan melakukan berbagai tugas. Salah satu pustaka populer untuk membuat permintaan HTTP di JavaScript adalah Axios.

Dalam postingan blog ini, kita akan membahas seluk-beluk penggunaan Axios untuk membuat permintaan GET dengan body dan header. Jadi, ambil minuman favorit Anda, dan mari kita mulai!

💡
Apidog dapat menyederhanakan proses pengiriman parameter permintaan GET dan membuat pengembangan API lebih efisien, jadi klik tombol unduh di bawah ini untuk menggunakan Apidog sepenuhnya gratis.
button

Apa itu Axios

Axios adalah klien HTTP berbasis promise untuk browser dan Node.js. Ini menyederhanakan pembuatan permintaan HTTP, penanganan respons, dan pengelolaan kesalahan. Baik Anda sedang membangun aplikasi satu halaman atau proyek sisi server, Axios siap membantu Anda.

Axios

Mengapa Menggunakan Axios dan Bagaimana Cara Menginstalnya?

  • Sintaks Bersih: Axios menyediakan sintaks yang bersih dan intuitif untuk membuat permintaan.
  • Promise: Axios mengembalikan promise, sehingga memudahkan penanganan operasi asinkron.
  • Kompatibilitas Browser dan Node.js: Ini berfungsi dengan lancar di kedua lingkungan.
  • Interceptor: Anda dapat mencegat permintaan dan respons, menambahkan logika khusus.

Anda dapat menginstal Axios menggunakan npm atau yarn. Berikut cara menginstalnya:

Menggunakan npm:

$ npm install axios

Menggunakan bower:

$ bower install axios

Menggunakan yarn:

$ yarn add axios

Menggunakan jsDelivr CDN:

<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>

Menggunakan unpkg CDN:

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
Situs web resmi Axios

Body dan Header Apa yang Dapat Anda Gunakan dengan Permintaan GET?

Saat membuat permintaan GET menggunakan Axios, spesifikasi HTTP biasanya tidak menyertakan body permintaan. Namun, ada skenario di mana Anda mungkin perlu mengirim data bersama dengan permintaan GET Anda. Mari kita jelajahi bagaimana Anda dapat mencapai ini:

Parameter Kueri (Parameter URL):

  • Alih-alih menyertakan data dalam body permintaan, Anda dapat meneruskannya sebagai parameter kueri di URL.
  • Gunakan properti params dalam objek konfigurasi Axios untuk mengirim data sebagai parameter kueri.

Contoh:

const data = {
  param1: 'value1',
  param2: 'value2',
};

axios.get('https://api.example.com/resource', { params: data })
  .then((response) => {
    console.log('Data received:', response.data);
  })
  .catch((error) => {
    console.error('Error fetching data:', error.message);
  });
  • Di sisi server, Anda dapat mengakses parameter ini menggunakan req.query.param1 dan req.query.param2.
  • Header sangat penting untuk autentikasi, otorisasi, dan tujuan lainnya.
  • Anda dapat mengatur header khusus menggunakan properti headers dalam objek konfigurasi Axios.

Contoh:

const config = {
  headers: {
    Authorization: 'Bearer YOUR_ACCESS_TOKEN',
    'Custom-Header': 'Custom Value',
  },
};

axios.get('https://api.example.com/protected-resource', config)
  .then((response) => {
    console.log('Protected data:', response.data);
  })
  .catch((error) => {
    console.error('Error fetching protected data:', error.message);
  });
  • Ganti 'Bearer YOUR_ACCESS_TOKEN' dengan token Anda yang sebenarnya.

Hindari Mengirim Body dalam Permintaan GET:

  • Meskipun secara teknis memungkinkan untuk mengirim body dalam permintaan GET menggunakan Axios, ini umumnya dianggap sebagai praktik yang buruk.
  • Spesifikasi HTTP tidak mendefinisikan body permintaan untuk permintaan GET.
  • Jika Anda perlu mengirim data, lebih baik menggunakan parameter kueri atau metode lain yang sesuai.

Ingatlah bahwa mematuhi praktik terbaik memastikan kode yang kuat dan mudah dipelihara. Jika Anda merasa perlu mengirim data kompleks dengan permintaan GET, pertimbangkan untuk mengevaluasi kembali desain Anda untuk memastikan bahwa itu selaras dengan konvensi standar.

Bagaimana Cara Menambahkan dan Mengirim header dan body dalam Permintaan GET Axios?

Saat menggunakan Axios untuk membuat permintaan GET, penting untuk memahami bahwa spesifikasi HTTP biasanya tidak menyertakan body permintaan untuk permintaan GET. Namun, Anda masih dapat mengirim data tambahan menggunakan parameter kueri dan header. Berikut cara Anda dapat menambahkan dan mengirim header, dan cara bekerja dengan data dalam permintaan GET:

Menambahkan Header

Untuk menambahkan header ke permintaan GET Anda di Axios, Anda dapat meneruskan objek konfigurasi dengan properti headers. Berikut adalah contohnya:

const axios = require('axios');

const config = {
  headers: {
    'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
    'Custom-Header': 'Custom Value'
  }
};

axios.get('https://api.example.com/data', config)
  .then((response) => {
    // Handle the response
  })
  .catch((error) => {
    // Handle any errors
  });

Mengirim Data dengan Permintaan GET

Meskipun mengirim body dengan permintaan GET tidak standar dan umumnya tidak disarankan, Anda dapat mengirim data sebagai parameter kueri menggunakan properti params dalam objek konfigurasi Axios:

const params = {
  key1: 'value1',
  key2: 'value2'
};

axios.get('https://api.example.com/data', { params })
  .then((response) => {
    // Handle the response
  })
  .catch((error) => {
    // Handle any errors
  });

Di sisi server, data ini akan dapat diakses melalui request.query, bukan request.body. Perlu juga dicatat bahwa parameter ini akan ditambahkan ke URL.

Kesalahan Umum dan Tips Pemecahan Masalah

Saat bekerja dengan Axios untuk membuat permintaan GET dengan body dan header, pengembang mungkin menemukan beberapa kesalahan umum. Berikut adalah beberapa tips pemecahan masalah untuk membantu Anda mengatasi masalah ini:

Kesalahan Umum

1. Kesalahan: Axios get bukan fungsi

  • Penyebab: Kesalahan ini biasanya terjadi ketika ada masalah dengan impor Axios atau ketika mencoba memanggil .get pada variabel yang tidak terdefinisi.
  • Solusi: Pastikan Axios diimpor dengan benar dan Anda memanggil .get pada instance Axios.

2. Kesalahan: Kesalahan Jaringan

  • Penyebab: Kesalahan ini dapat terjadi karena masalah CORS, masalah konektivitas jaringan, atau kegagalan sisi server.
  • Solusi: Periksa koneksi jaringan, pastikan server berjalan, dan verifikasi bahwa CORS dikonfigurasi dengan benar di server.

3. Kesalahan: Permintaan gagal dengan kode status 4xx/5xx

  • Penyebab: Kesalahan ini adalah respons dari server yang menunjukkan masalah sisi klien (4xx) atau masalah sisi server (5xx).
  • Solusi: Untuk kesalahan 4xx, periksa URL permintaan, header, dan parameter. Untuk kesalahan 5xx, selidiki log server untuk detail lebih lanjut.

4. Kesalahan: Waktu Habis

  • Penyebab: Permintaan membutuhkan waktu lebih lama dari timeout yang ditentukan di Axios.
  • Solusi: Tingkatkan nilai timeout dalam konfigurasi permintaan Axios atau optimalkan waktu respons server.

5. Kesalahan: URL Tidak Valid

  • Penyebab: URL yang diberikan dalam permintaan Axios salah atau tidak terbentuk dengan benar.
  • Solusi: Verifikasi kebenaran URL dan pastikan URL tersebut dikodekan dengan benar.

6. Kesalahan: Header Ditolak

  • Penyebab: Server mungkin menolak permintaan dengan header tertentu karena kebijakan keamanan.
  • Solusi: Tinjau header yang dikirim dan pastikan header tersebut sesuai dengan format dan nilai yang diharapkan server.

7. Kesalahan: Respons tidak diterima

  • Penyebab: Server tidak mengirim respons, mungkin karena crash atau waktu habis.
  • Solusi: Periksa status dan log server untuk mengidentifikasi potensi masalah.

Pemecahan Masalah Tingkat Lanjut:

  • Interceptor Axios: Gunakan interceptor Axios untuk mencatat permintaan dan respons untuk debugging.
  • axios-retry: Terapkan paket axios-retry untuk menangani kesalahan sementara secara otomatis.
  • Alat Debugging: Manfaatkan alat debugging untuk menelusuri kode Anda dan mengidentifikasi di mana masalah terjadi.

Pemecahan masalah yang efektif melibatkan pendekatan sistematis untuk mengidentifikasi masalah, memahami pesan kesalahan, dan menerapkan solusi yang sesuai. Dengan mengikuti tips ini, Anda seharusnya dapat mengatasi sebagian besar masalah yang dihadapi saat membuat permintaan GET dengan Axios.

Bagaimana Cara Mengirim Permintaan GET dengan Body dan Header Menggunakan Apidog

Apidog adalah alat yang ampuh yang dapat membantu Anda mengirim permintaan GET dengan parameter body dan header dengan lebih mudah.

button

Kirim Permintaan GET Dengan header:

Buka Apidog dan klik tombol Permintaan Baru.

Antarmuka Apidog

Masukkan URL endpoint API yang ingin Anda kirimi permintaan GET, lalu klik tab Header dan pilih opsi yang Anda inginkan. Dalam contoh ini, kita memilih Otorisasi.

Tab Header Apidog

Tambahkan kredensial Anda (data sebenarnya yang diperlukan untuk verifikasi server, misalnya, nama pengguna/kata sandi, token, hash)

Tambahkan kredensial

Kirim permintaan dan analisis respons.

analisis respons.

Apidog memudahkan untuk bekerja dengan header otorisasi, sehingga Anda dapat dengan percaya diri menguji API Anda!

Kirim Permintaan GET Dengan Body:

Menguji permintaan GET dengan body bisa jadi agak rumit karena spesifikasi HTTP secara tradisional menganggap permintaan GET sebagai idempoten (berarti mereka tidak mengubah status server). Namun, beberapa API mungkin memungkinkan perilaku khusus di mana Anda dapat menyertakan body permintaan bahkan dalam permintaan GET.

Beralih ke tab "Body" dan pilih spesifikasi body yang ingin Anda tambahkan.

Spesifikasi Body Permintaan

Kirim permintaan dan Verifikasi bahwa kode status respons adalah ok.

Respons

Ingatlah bahwa meskipun menguji permintaan GET dengan body mungkin tidak umum, penting untuk memahami perilaku API Anda dan memastikan pengujian menyeluruh untuk semua skenario. Apidog dapat menyederhanakan proses ini dengan menyediakan alat untuk desain, debugging, dan pengujian API.

Menggunakan Apidog untuk Menghasilkan Kode Axios Secara Otomatis

Apidog juga memungkinkan Anda untuk secara otomatis menghasilkan kode Axios untuk membuat permintaan HTTP. Berikut cara menggunakan Apidog untuk menghasilkan kode Axios:

  1. Masukkan header atau parameter string kueri apa pun yang ingin Anda kirim dengan permintaan, lalu klik tombol Hasilkan Kode.

2. Salin kode Axios yang dihasilkan dan tempelkan ke proyek Anda.

Praktik Terbaik untuk Parameter Permintaan GET Axios

Untuk memastikan penggunaan parameter yang efektif dalam permintaan GET Axios Anda, pertimbangkan praktik terbaik berikut:

  1. Pilih nama parameter deskriptif: Gunakan nama yang bermakna untuk parameter Anda untuk meningkatkan keterbacaan dan kemampuan pemeliharaan kode Anda. Ini memudahkan pengembang lain (termasuk diri Anda di masa mendatang) untuk memahami tujuan setiap parameter.
  2. Validasi dan sanitasi input pengguna: Saat menerima input pengguna sebagai parameter, validasi dan sanitasi nilai untuk mencegah potensi kerentanan keamanan seperti injeksi SQL atau lintas situs (XSS). Gunakan teknik validasi dan sanitasi sisi server untuk memastikan keamanan aplikasi Anda.
  3. Tangani parameter default atau opsional: Dalam beberapa kasus, Anda mungkin ingin menyertakan parameter default atau opsional dalam permintaan GET Anda. Untuk menangani ini, Anda dapat secara kondisional menambahkan parameter ke objek params berdasarkan kriteria tertentu. Ini memungkinkan Anda untuk memberikan nilai fallback ketika parameter tidak diberikan secara eksplisit.
  4. Pertimbangkan paginasi dan batasi data: Jika Anda berurusan dengan kumpulan data yang besar, pertimbangkan untuk menerapkan paginasi untuk membatasi jumlah data yang diambil dalam setiap permintaan. Ini membantu meningkatkan kinerja dan mengurangi beban pada klien dan server. Anda dapat menyertakan parameter seperti page dan limit untuk mengontrol proses paginasi.

Kesimpulan

Membuat permintaan GET API Axios dengan body dan header adalah keterampilan penting bagi setiap pengembang yang bekerja dengan API. Postingan blog ini telah memberi Anda panduan komprehensif tentang cara melakukan hal itu. Kami telah membahas semuanya mulai dari menyiapkan Axios, membuat permintaan GET, hingga menangani respons dan kesalahan.

Dengan kekuatan Apidog, Anda dapat memodifikasi parameter header dan body dengan mudah. Dengan pengetahuan ini, Anda sekarang dapat dengan percaya diri berinteraksi dengan API, mengambil data secara efisien, dan membangun aplikasi yang lebih dinamis dan responsif. Ingat, kunci untuk menguasai konsep-konsep ini adalah latihan. Jadi, jangan ragu untuk menjelajahi Apidog dan mulai membuat permintaan tersebut! Selamat membuat kode!

button
Cara Menggunakan Lovable AI (Alternatif Cursor untuk Pengembang Web)Tutorial

Cara Menggunakan Lovable AI (Alternatif Cursor untuk Pengembang Web)

Pelajari cara buat web apa pun dgn Lovable. Panduan lengkap, fitur inovatif, & integrasi Apidog (API gratis).

Ardianto Nugroho

April 15, 2025

Cara Menambahkan Kunci API Kustom ke Cursor: Panduan KomprehensifTutorial

Cara Menambahkan Kunci API Kustom ke Cursor: Panduan Komprehensif

Tutorial ini memandu Anda menyiapkan & mengelola API key khusus di Cursor: OpenAI, Anthropic, Google, & Azure.

Ardianto Nugroho

April 11, 2025

Cara Menggunakan NVIDIA Llama Nemotron API untuk Agen AI Tingkat LanjutTutorial

Cara Menggunakan NVIDIA Llama Nemotron API untuk Agen AI Tingkat Lanjut

Pelajari API NVIDIA Llama Nemotron utk buat agen AI canggih.

Ardianto Nugroho

April 11, 2025