Setup Django Untuk REST API

Salah satu package django untuk REST API adalah django-rest-framework. Selanjutnya install terlebih dahulu dengan menjalankan perintah ini di direktori project.
pip install djangorestframeworklalu buka file settings.py yang terletak di folder_project/settings.py lalu tambahkan kode sperti dibawah ini
INSTALLED_APPS = [
...
'rest_framework',
]Membuat Simple API GET
Selanjutnya buka file views.py yang terletak di folder app. kita akan mencoba simple api untuk mencoba REST API. Contoh kodenya seperti dibawah ini :
from rest_framework.response import Response
from rest_framework.decorators import api_view
# Create your views here.
@api_view(['GET'])
def getData(request):
data_app = [
{
"nama": "Ahmad",
"alamat": "Surabaya"
},
{
"nama": "Sulaiman",
"alamat": "Malang"
}
]
return Response(data=app)Disini kita import Response yang berfungsi untuk return JSON dan api_view untuk decorator method yang diperbolehkan dalam mengakses API.
Pada tutorial ini kita hanya membuat variabel data_app yang berisi List yang terdiri dari dau dictionaries. yang dimana isi dari data_app akan ditampilkan melalui method Response(data=data_app).
Bagaimana jika data yang dikirim via API dalam bentuk Objek ? maka disini objek tersebut harus diconvert ke JSON terlebih dahulu. untuk convertnya menggunakan module serialization
Membuat URL REST API
Pada folder app buat file urls.py yang berisi seperti dibawah ini :
from django.urls import path
import chatbot.views as v
urlpatterns = [
path('members/',v.getData, name='members')
]Pada kode diatas kita import path untuk mendefinisikan route api. Dan juga import file views.py dengan memberikan alias v
untuk variabel urlpatterns berisi route app diamana
- nama path-nya adalah "members/"
- nama route-nya adalah "members"
- method yang menjalankan adalah "v.getData"
Integrasi URL App pada URL Project
Buka file urls.py yang terletak di folder_project/urls.py . lalu tambahkan kode seperti dibawah ini
from django.contrib import admin
from django.urls import include,path
urlpatterns = [
path('', include('members.urls')),
path('admin/', admin.site.urls),
]tambahkan kode path('', include('members.urls')). untuk integrasi antara URL APP dan URL Project.
Proses integrasi ini hanya dijalankan sekali saja. Sedangkan untuk penambahan url baru cukup ditambahkan pada file urls.py pada folder APP
Test REST API
Untuk mecobanya jalankan servernya terlebih dahulu. dengan menjalankan perintah ini di folder project
py manage.py runserverJalankan pada browser dengan input address bar http://127.0.0.1:8000/members. Jika berhasil maka akan muncul seperti di bawah ini

Terima Kasih Semoga Bermanfaat...