Anatomi dasar permintaan API

Pengantar API di Python

Chris Ramakers

Engineering Manager

Apa itu URL?

  • URL = Uniform Resource Locator
  • Alamat terstruktur ke Resource API
  • Kustomisasi URL untuk berinteraksi dengan Resource API tertentu
http://350.5th-ave.com/unit/243
Pengantar API di Python

Membedah URL

Diagram yang menunjukkan bagian URL: Protokol (http://), Domain (350.5th-ave.com), Port (:80), Path (/unit/243), dan Query (?floor=77).

  • Protocol = cara transmisi
  • Domain = alamat gedung kantor
  • Port = gerbang/pintu masuk
  • Path = unit kantor spesifik
  • Query = instruksi tambahan
Pengantar API di Python

Menambah parameter query dengan requests

# Tambahkan parameter query ke string URL
response = requests.get('http://350.5th-ave.com/unit/243?floor=77&elevator=True')
print(response.url)
http://350.5th-ave.com/unit/243?floor=77&elevator=True
  • Gunakan argumen params untuk menambah parameter query
# Buat dictionary
query_params = {'floor': 77, 'elevator': True}
# Kirim dictionary melalui argumen `params`
response = requests.get('http://350.5th-ave.com/unit/243', params=query_params)
print(response.url)
http://350.5th-ave.com/unit/243?floor=77&elevator=True
Pengantar API di Python

HTTP Verb

  • Tujuan: Unit 243 di gedung kantor 350 5th Ave
  • URL: http://350.5th-ave.com/unit/243

Aksi

Verb Aksi Deskripsi
GET Baca Cek isi kotak surat
POST Buat Masukkan paket baru ke kotak surat
PUT Perbarui Ganti semua paket dengan yang baru
DELETE Hapus Kosongkan semua paket dari kotak surat
1 Ada 9 verb HTTP secara total, namun untuk REST API sederhana hanya 4 ini yang relevan
Pengantar API di Python

Mengirim data dengan POST dan PUT

# GET = Ambil resource
response = requests.get('http://350.5th-ave.com/unit/243')

# POST = Buat resource response = requests.post('http://350.5th-ave.com/unit/243', data={"key": "value"}) # PUT = Perbarui resource yang ada response = requests.put('http://350.5th-ave.com/unit/243', data={"key": "value"})
# DELETE = Hapus resource response = requests.delete('http://350.5th-ave.com/unit/243')
  • Setiap verb punya metodenya di paket requests
  • Gunakan argumen data untuk mengirim data pada permintaan POST atau PUT.
Pengantar API di Python

Ayo berlatih!

Pengantar API di Python

Preparing Video For Download...