Django adalah sebuah kerangka kerja web Python yang dirancang untuk membantu pengembang dalam membangun aplikasi web dengan cepat dan mudah. Ini gratis, sumber terbuka, dan memiliki komunitas pengembang yang besar dan aktif.
Apakah Anda ingin mempelajari cara membuat dan menguji Django API yang dapat mengirim dan menerima data JSON? Jika ya, maka Anda berada di tempat yang tepat. Pada akhir postingan ini, Anda akan dapat membuat dan menguji Django API yang dapat mengirim dan menerima data JSON seperti seorang profesional. Mari kita mulai!
Anda juga dapat memeriksa header, cookie, kode status, dan detail respons lainnya. Apidog juga memungkinkan Anda memanipulasi data respons menggunakan JavaScript, memfilter data menggunakan JSONPath, dan memvalidasi data menggunakan JSON Schema.
Apa itu JSON?
JSON adalah singkatan dari JavaScript Object Notation. Ini adalah format standar untuk merepresentasikan data terstruktur. Ini adalah format berbasis teks yang menggunakan teks yang mudah dibaca manusia untuk menyimpan dan mengirimkan objek data yang terdiri dari pasangan atribut-nilai dan array (atau nilai serialisasi lainnya). JSON umumnya digunakan untuk mengirimkan data dalam aplikasi web, seperti mengirim data dari server ke klien, atau sebaliknya.
JSON dapat merepresentasikan enam jenis data secara native: string, angka, boolean, null, array, dan objek. Misalnya, berikut adalah representasi JSON dari sebuah postingan:
{
"id": 1001,
"title": "What is JSON?",
"author": {
"id": 1,
"name": "James Walker"
},
"tags": [
"api",
"json",
"programming"
],
"published": false,
"publishedTimestamp": null
}
Contoh ini menunjukkan semua tipe data JSON. Ini juga menggambarkan keringkasan data berformat JSON, salah satu karakteristik yang membuatnya sangat menarik untuk digunakan dalam API.
Dasar-dasar Metode Permintaan POST
Metode permintaan POST adalah jenis permintaan HTTP yang digunakan untuk mengirim data ke server untuk membuat atau memperbarui sumber daya. Ini umumnya digunakan untuk mengunggah file atau mengirimkan formulir web yang telah diisi. Metode ini meminta server web untuk menerima data yang terlampir dalam badan pesan permintaan, biasanya untuk tujuan penyimpanan.
JSON, singkatan dari JavaScript Object Notation, sering digunakan dalam permintaan POST karena kemampuannya untuk mengirimkan data terstruktur ke server. Format terstruktur ini memungkinkan interpretasi dan pemrosesan yang mudah oleh server, terutama saat membuat atau memperbarui sumber daya.
Format standar JSON untuk merepresentasikan objek dan data menjadikannya pilihan populer untuk mengirim data dalam permintaan POST. Dengan menggunakan JSON, pengembang dapat memastikan bahwa data yang dikirim ke server terorganisir dengan baik dan mudah dipahami, sehingga meningkatkan efisiensi pembuatan dan pembaruan sumber daya.

Apa itu Django dan Mengapa Anda Harus Menggunakannya?
Django adalah kerangka kerja web yang membantu Anda membangun aplikasi web dengan cepat dan mudah. Ini ditulis dalam Python dan mengikuti pola Model-View-Template (MVT). Ini memberi Anda berbagai fitur dan alat, seperti:
- Antarmuka admin bawaan yang memungkinkan Anda mengelola data dan pengguna Anda
- ORM yang kuat yang memungkinkan Anda berinteraksi dengan berbagai database menggunakan kode Python
- Dispatcher URL fleksibel yang memungkinkan Anda memetakan URL ke tampilan
- Mesin template yang memungkinkan Anda membuat halaman HTML dinamis menggunakan kode dan variabel Python
- Kerangka kerja formulir yang memungkinkan Anda membuat dan memvalidasi formulir web
- Kerangka kerja pengujian yang memungkinkan Anda menulis dan menjalankan pengujian otomatis
- Kerangka kerja keamanan yang melindungi aplikasi web Anda dari serangan umum, seperti CSRF, XSS, injeksi SQL, dll.

Django adalah kerangka kerja yang hebat untuk siapa pun yang ingin membangun aplikasi web, baik Anda seorang pemula atau ahli. Ini membantu Anda untuk:
- Mengembangkan aplikasi web lebih cepat dan lebih mudah dengan memberi Anda banyak fungsionalitas langsung
- Menulis kode yang bersih dan mudah dipelihara dengan mengikuti prinsip DRY (Don’t Repeat Yourself) dan KISS (Keep It Simple, Stupid)
- Menskalakan aplikasi web Anda dengan mudah dengan menggunakan fitur caching, middleware, dan deployment Django
- Mempelajari dan meningkatkan keterampilan Python dan pengembangan web Anda dengan menggunakan dokumentasi dan sumber daya komunitas Django yang ekstensif
Cara Menyiapkan Proyek Django untuk Mengambil Data JSON POST
Untuk membuat dan menguji Django API yang dapat mengirim dan menerima data JSON, Anda perlu menyiapkan proyek Django dan membuat aplikasi API sederhana.
Instalasi Django
Anda juga perlu menginstal beberapa dependensi dan alat, seperti:
- Python: Bahasa pemrograman tempat Django dibuat. Anda dapat mengunduh dan menginstal Python dari situs web resmi: https://www.python.org/
- Pip: Manajer paket yang memungkinkan Anda menginstal dan mengelola paket Python. Anda dapat menginstal Pip dengan mengikuti instruksi dari situs web resmi: https://pip.pypa.io/en/stable/installing/
- Virtualenv: Alat yang memungkinkan Anda membuat dan mengelola lingkungan Python yang terisolasi. Anda dapat menginstal Virtualenv dengan menjalankan perintah berikut di terminal Anda:
pip install virtualenv
- Django: Kerangka kerja web yang akan Anda gunakan untuk membuat aplikasi web Anda. Anda dapat menginstal Django dengan menjalankan perintah berikut di terminal Anda:
pip install django
- Django REST framework: Pustaka yang memungkinkan Anda membuat dan menguji RESTful API menggunakan Django. Anda dapat menginstal Django REST framework dengan menjalankan perintah berikut di terminal Anda:
pip install djangorestframework
Setelah menginstal dependensi dan alat ini, Anda dapat membuat proyek Django dengan menjalankan perintah berikut di terminal Anda:
django-admin startproject django_post_json
Perintah ini akan membuat folder bernama django_post_json
yang berisi file dan folder berikut:
django_post_json
: Folder utama yang berisi pengaturan proyek dan file konfigurasi, sepertisettings.py
,urls.py
,wsgi.py
, dll.manage.py
: Skrip yang memungkinkan Anda menjalankan berbagai perintah dan tugas untuk proyek Anda, sepertirunserver
,migrate
,test
, dll.db.sqlite3
: File database default yang digunakan Django untuk menyimpan data Anda.

Membuat Django API
Anda juga dapat membuat aplikasi API sederhana dengan menjalankan perintah berikut di terminal Anda:
python manage.py startapp api
Perintah ini akan membuat folder bernama api
yang berisi file dan folder berikut:
migrations
: Folder yang berisi file yang melacak perubahan pada skema database Anda__init__.py
: File yang menandai folder sebagai paket Pythonadmin.py
: File yang memungkinkan Anda mendaftarkan model Anda dengan antarmuka admin Djangoapps.py
: File yang berisi konfigurasi untuk aplikasi Andamodels.py
: File yang memungkinkan Anda menentukan model data Andatests.py
: File yang memungkinkan Anda menulis dan menjalankan pengujian untuk aplikasi Andaviews.py
: File yang memungkinkan Anda menentukan tampilan dan logika untuk aplikasi Anda
Anda juga perlu menambahkan aplikasi Anda ke daftar INSTALLED_APPS
di file settings.py
proyek Anda. Anda dapat melakukan ini dengan menambahkan baris berikut ke akhir daftar:
'api.apps.ApiConfig',
Anda juga perlu menambahkan Django REST framework ke daftar INSTALLED_APPS
. Anda dapat melakukan ini dengan menambahkan baris berikut ke akhir daftar:
'rest_framework',
Anda sekarang telah menyiapkan proyek Django dan membuat aplikasi API sederhana. Anda dapat menjalankan proyek Anda dengan menjalankan perintah berikut di terminal Anda:
python manage.py runserver
Perintah ini akan memulai server pengembangan yang dapat Anda akses dari browser Anda di http://127.0.0.1:8000/. Anda akan melihat halaman yang bertuliskan “The install worked successfully! Congratulations!”
Cara Membuat Tampilan untuk Mengambil Data JSON POST di Django
Untuk membuat dan menguji Django API yang dapat mengirim dan menerima data JSON, Anda perlu membuat tampilan dan URL untuk titik akhir API. Tampilan adalah fungsi atau kelas Python yang menangani permintaan dan respons untuk URL tertentu. Ini mendefinisikan logika dan perilaku aplikasi Anda. URL adalah string yang memetakan ke tampilan. Ini mendefinisikan alamat dan pola aplikasi Anda.
- Dapatkan daftar semua pesan dalam format JSON
- Buat pesan baru dalam format JSON
- Dapatkan satu pesan dalam format JSON
- Perbarui satu pesan dalam format JSON
- Hapus satu pesan dalam format JSON
Cara Membuat Tampilan untuk Django Anda
Anda dapat membuat tampilan untuk titik akhir API ini di file views.py
aplikasi Anda. Anda dapat melakukan ini dengan menambahkan kode berikut ke file:
from rest_framework import generics
from .models import Message
from .serializers import MessageSerializer
class MessageListCreateView(generics.ListCreateAPIView):
queryset = Message.objects.all()
serializer_class = MessageSerializer
class MessageRetrieveUpdateDestroyView(generics.RetrieveUpdateDestroyAPIView):
queryset = Message.objects.all()
serializer_class = MessageSerializer
Kode ini akan membuat dua tampilan yang mewarisi dari tampilan generik Django REST framework. Tampilan MessageListCreateView
akan menangani permintaan GET dan POST untuk daftar pesan. Tampilan MessageRetrieveUpdateDestroyView
akan menangani permintaan GET, PUT, PATCH, dan DELETE untuk satu pesan.
Kedua tampilan akan menggunakan atribut queryset
dan serializer_class
untuk menentukan sumber data dan format data. Anda dapat mempelajari lebih lanjut tentang tampilan generik dan metodenya dari dokumentasi Django REST framework: https://www.django-rest-framework.org/api-guide/generic-views/
Anda juga dapat membuat URL untuk titik akhir API ini di file urls.py
aplikasi Anda. Anda dapat membuat file ini di folder yang sama dengan file views.py
Anda. Anda dapat melakukan ini dengan menambahkan kode berikut ke file:
from django.urls import path
from .views import MessageListCreateView, MessageRetrieveUpdateDestroyView
urlpatterns = [
path('messages/', MessageListCreateView.as_view(), name='message-list'),
path('messages/<int:pk>/', MessageRetrieveUpdateDestroyView.as_view(), name='message-detail'),
]
Kode ini akan membuat dua pola URL yang memetakan ke tampilan yang Anda buat. Pola pertama akan cocok dengan URL /messages/
dan akan menggunakan tampilan MessageListCreateView
. Pola kedua akan cocok dengan URL /messages/<int:pk>/
dan akan menggunakan tampilan MessageRetrieveUpdateDestroyView
. Bagian <int:pk>
adalah konverter jalur yang akan menangkap nilai integer dan meneruskannya ke tampilan sebagai argumen pk
. Nilai ini akan digunakan untuk mengidentifikasi objek pesan yang akan dioperasikan oleh tampilan. Anda juga dapat menambahkan argumen name
ke setiap pola untuk memberinya pengidentifikasi unik yang dapat Anda gunakan untuk merujuk ke URL dalam kode Anda.
Cara Membuat URL untuk Django Anda
Anda juga perlu menyertakan pola URL aplikasi Anda di file urls.py
proyek Anda. Anda dapat melakukan ini dengan menambahkan kode berikut ke file:
from django.urls import path, include
urlpatterns = [
path('api/', include('api.urls')),
]
Kode ini akan membuat pola URL yang akan cocok dengan URL /api/
dan akan menyertakan pola URL aplikasi Anda. Dengan cara ini, Anda dapat membuat namespace untuk aplikasi Anda dan menghindari konflik dengan aplikasi atau URL lain. Anda juga dapat menambahkan garis miring di akhir URL untuk membuatnya konsisten dan menghindari masalah pengalihan.
Anda sekarang telah membuat tampilan dan URL untuk titik akhir API. Anda dapat menguji API Anda dengan menjalankan perintah berikut di terminal Anda:
python manage.py runserver
Perintah ini akan memulai server pengembangan yang dapat Anda akses dari browser Anda di http://127.0.0.1:8000/. Anda juga dapat menggunakan Apidog, alat berbasis web yang memungkinkan Anda menguji dan men-debug API dengan mudah, untuk menguji API Anda. Saya akan menunjukkan cara melakukannya di bagian berikutnya.
Menangani data JSON POST di Django
Menangani data JSON post di Django adalah tugas umum bagi pengembang web yang ingin membuat dan menguji RESTful API. Django menyediakan berbagai fitur dan alat untuk membantu Anda dengan tugas ini, seperti:
- Properti
request.body
yang memungkinkan Anda mengakses data mentah dari badan permintaan sebagai byte. Anda dapat menggunakan moduljson
untuk mengurai data menjadi kamus Python. Misalnya, Anda dapat menulis kode berikut di tampilan Anda:
import json
from django.http import JsonResponse
def my_view(request):
if request.method == 'POST':
data = json.loads(request.body) # parse the JSON data into a dictionary
# do something with the data
return JsonResponse(data) # return the data as a JSON response
- Kelas
JsonResponse
yang memungkinkan Anda mengembalikan respons yang diserialisasikan ke dalam format JSON. Anda dapat meneruskan kamus atau daftar Python sebagai argumen pertama, dan secara opsional menentukan argumen lain, sepertistatus
,safe
,json_dumps_params
, dll. Misalnya, Anda dapat menulis kode berikut di tampilan Anda:
from django.http import JsonResponse
def my_view(request):
if request.method == 'GET':
data = {'name': 'Alice', 'email': 'alice@example.com'} # create a dictionary
return JsonResponse(data, status=200, safe=True) # return the dictionary as a JSON response
- Django REST framework, pustaka pihak ketiga yang memungkinkan Anda membuat dan menguji RESTful API menggunakan Django. Ini memberi Anda berbagai fitur dan alat, seperti serializer, tampilan generik, router, izin, otentikasi, dll. Misalnya, Anda dapat menulis kode berikut di file
serializers.py
Anda:
from rest_framework import serializers
from .models import Message
class MessageSerializer(serializers.ModelSerializer):
class Meta:
model = Message
fields = ['name', 'email', 'message']
Kode ini akan membuat serializer yang mengonversi model Message
Anda ke dalam format JSON dan sebaliknya. Anda dapat mempelajari lebih lanjut tentang Django REST framework dan fitur serta alatnya dari artikel ini:

Ini adalah beberapa teknik lanjutan untuk menangani data JSON post di Django. Anda dapat menggunakannya untuk membuat dan menguji Django API Anda sendiri yang dapat mengirim dan menerima data JSON.
Mengambil Data JSON POST Django dengan Apidog
Apidog adalah alat yang hebat untuk siapa pun yang bekerja dengan API, baik Anda seorang pengembang, penguji, perancang, atau pelajar. Ini membantu Anda untuk:
- Pelajari cara menggunakan API yang berbeda dan jelajahi fiturnya
- Uji dan debug API Anda sendiri dan temukan kesalahan dan bug
- Bereksperimen dengan parameter dan opsi yang berbeda dan lihat bagaimana pengaruhnya terhadap respons
- Dokumentasikan dan demonstrasikan penggunaan dan hasil API Anda
- Berkolaborasi dan berkomunikasi dengan pengguna dan pengembang API lainnya
Untuk menguji Django API Anda yang dapat mengirim dan menerima data JSON menggunakan Apidog, Anda perlu mengikuti langkah-langkah berikut:
- Kunjungi situs web Apidog dan buat akun gratis. Anda juga dapat menggunakan Apidog tanpa akun, tetapi Anda tidak akan dapat menyimpan dan membagikan permintaan Anda. Buka Apidog dan buat permintaan baru.

- Pilih metode HTTP yang ingin Anda gunakan. Misalnya, jika Anda ingin mendapatkan daftar pesan, Anda dapat memilih metode GET. Jika Anda ingin membuat pesan baru, Anda dapat memilih metode POST.

- Masukkan URL titik akhir API Anda di bidang input URL. Tambahkan header, cookie, atau parameter apa pun yang Anda butuhkan untuk permintaan Anda. Misalnya, jika Anda ingin membuat pesan baru, Anda perlu menambahkan header
Content-Type
dengan nilaiapplication/json
dan menulis data dalam format JSON di bidang input badan. Misalnya, Anda dapat menulis data berikut:

- Klik tombol Kirim untuk mengirim permintaan ke API Anda. Apidog kemudian akan menampilkan respons dari API Anda di tab Respons. Anda juga dapat beralih ke tab Header, Cookie, atau Mentah untuk melihat detail respons lainnya.

- Analisis dan manipulasi data respons menggunakan fitur dan alat Apidog. Anda dapat menggunakan JSON Viewer, JSONPath, JavaScript, JSON Schema, dan fitur serta alat lainnya untuk melihat, memfilter, memodifikasi, atau memvalidasi data respons. Anda juga dapat menyimpan permintaan dan respons Anda dan membagikannya dengan orang lain menggunakan URL unik.
Anda sekarang telah menguji Django API Anda yang dapat mengirim dan menerima data JSON menggunakan Apidog. Anda juga dapat menguji titik akhir dan metode API lainnya menggunakan langkah-langkah yang sama. Anda juga dapat menggunakan Apidog untuk menguji API lain yang Anda temukan secara online atau buat sendiri. Apidog adalah alat serbaguna dan ampuh yang dapat membantu Anda dengan tugas terkait API apa pun. Anda dapat mempelajari lebih lanjut tentang Apidog dan fitur serta alatnya dari situs web resmi:
Kesimpulan
Dalam postingan blog ini, saya telah menunjukkan kepada Anda cara membuat dan menguji Django API yang dapat mengirim dan menerima data JSON. Anda telah mempelajari cara:
- Menyiapkan proyek Django dan membuat aplikasi API sederhana
- Menentukan model dan serializer untuk data JSON
- Membuat tampilan dan URL untuk titik akhir API
- Menguji API menggunakan Apidog, alat berbasis web yang memungkinkan Anda menguji dan men-debug API dengan mudah
- Menganalisis dan memanipulasi data JSON menggunakan fitur dan alat Apidog
Saya harap Anda menemukan postingan blog ini menginspirasi dan bermanfaat. Anda dapat menggunakan keterampilan dan pengetahuan yang telah Anda peroleh dari postingan blog ini untuk membuat dan menguji Django API Anda sendiri yang dapat mengirim dan menerima data JSON.
Anda juga dapat menggunakan Apidog untuk menguji dan men-debug API lain yang Anda temui atau buat. Apidog adalah alat yang praktis dan bermanfaat yang dapat membuat pengembangan dan pengujian API Anda lebih mudah dan lebih cepat.