Python adalah bahasa pemrograman yang kuat. Ini memiliki banyak perpustakaan untuk membangun REST atau RESTful APIs. Salah satu perpustakaan populer untuk membangun aplikasi web dan menulis REST API adalah Labu.
Pada artikel ini, saya akan menunjukkan cara membuat REST API dengan Python menggunakan Flask. Mari kita mulai.
Persyaratan:
Kamu harus punya
- Python 2 atau Python 3 diinstal di komputer Anda.
- PIP atau PIP3 terinstal di komputer Anda.
- Pemahaman dasar bahasa pemrograman Python.
- Pemahaman dasar menjalankan perintah di shell.
Anda seharusnya dapat menemukan artikel dan tutorial tentang semua topik ini di LinuxHint.com
Saya akan menggunakan Python 3 di Debian 9 Stretch di artikel ini. Jika Anda menggunakan Python 2, Anda harus menyesuaikan sedikit. Anda harus bisa mencari tahu sendiri karena akan sesederhana menulis ular piton dari pada python3 dan pip dari pada pip3.
Menyiapkan Lingkungan Virtual:
Sederhananya, lingkungan virtual digunakan untuk mengisolasi satu aplikasi Python dari yang lain. Paket Python yang digunakan untuk melakukan itu adalah virtualenv.
Anda dapat dengan mudah menginstal virtualenv menggunakan PIP di komputer Anda dengan perintah berikut:
$ sudo -H pip3 instal virtualenvSekarang buat direktori proyek (sebut saja pirest/) dengan perintah berikut:
$mkdir pyrestSekarang buat lingkungan virtual Python di pirest/ direktori proyek dengan perintah berikut:
$ virtualenv pyrest/Sekarang navigasikan ke direktori proyek dengan perintah berikut:
$ cd pirusKemudian, aktifkan lingkungan virtual Python dengan perintah berikut:
$ sumber bin/aktifkanTerakhir, jalankan perintah berikut untuk menginstal library Flask Python:
$ bin/pip3 menginstal labuMenulis Script Flask Pertama Anda:
Di bagian ini, saya akan menulis program hello world di Python Flask.
Pertama, buat file Halo.py di direktori proyek Anda:
$ sentuh halo.pySekarang tambahkan baris berikut ke Halo.py file dan simpan.
Di bagian selanjutnya, saya akan menunjukkan cara menjalankan skrip Flask.
Menjalankan Skrip Flask:
Sekarang untuk memulai Halo.py Flask server, jalankan perintah berikut:
$bin/python3 halo.pySeperti yang Anda lihat, server telah dimulai http://127.0.0.1:8080.
Sekarang, Anda dapat mengakses server Flask http://127.0.0.1:8080 dari browser web atau perangkat lunak pengujian API seperti Postman. Saya akan menggunakan CURL.
$curl http://127.0.0.1:8080Seperti yang Anda lihat, output yang benar tercetak di layar.
Selamat! Flask berfungsi.
Mengakses Data Menggunakan GET di REST API:
GET request pada REST API digunakan untuk mengambil informasi dari server API. Anda menetapkan beberapa titik akhir API dan melakukan permintaan GET pada titik akhir itu. Itu mudah.
Pertama, buat file baru Dapatkan.py di direktori proyek Anda dengan perintah berikut:
$ sentuh dapatkan.pySekarang tambahkan baris berikut di Anda Dapatkan.py file dan simpan.
Di sini, pada baris 1, Labu fungsi konstruktor dan jsonify fungsi diimpor dari modul labu.
Pada baris 3, a Labu objek dibuat dan disimpan di aplikasi variabel.
Pada baris 5, saya membuat larik kamus Python dari beberapa data dummy dan menyimpannya di akun variabel.
Pada baris 10, saya mendefinisikan titik akhir API /akun dan metode permintaan, yaitu DAPATKAN.
Pada baris 11, saya mendefinisikan fungsinya dapatkanAkun(). dapatkanAkun() fungsi akan dijalankan ketika permintaan GET ke /akun titik akhir dibuat.
Baris 12, yang merupakan bagian dari dapatkanAkun() fungsi, saya mengonversi akun array kamus ke JSON menggunakan jsonify() berfungsi dan mengembalikannya.
Di jalur 14-15, saya menelepon aplikasi.Lari() untuk memberitahu Flask untuk menjalankan server API pada port 8080.
Sekarang jalankan server Flask API dengan perintah berikut:
$ bin/python3 dapatkan.pyServer telah dimulai pada port 8080.
Sekarang buat permintaan GET ke /akun titik akhir dengan CURL sebagai berikut:
$curl http://127.0.0.1:8080/akunSeperti yang Anda lihat, data akun ditampilkan sebagai format JSON pada permintaan GET on /akun titik akhir.
Anda juga bisa mendapatkan data akun tertentu. Untuk melakukan itu, saya akan membuat titik akhir API lain /Akun/
Mengedit Dapatkan.py skrip dan tambahkan baris yang ditandai ke dalamnya.
Di sini, pada baris 14, saya mendefinisikan titik akhir API /Akun/
Pada baris 15-17, fungsinya dapatkanAkun() untuk titik akhir API /Akun/
Pada baris 16, Indo variabel diubah menjadi bilangan bulat. Saya juga menyimpulkan 1 dari Indo variabel. Karena indeks array dimulai dari 0. Saya ingin memulai ID akun dari 1. Jadi jika saya menempatkan 1 sebagai akun
Pada baris 17, array pada indeks
Kode lainnya sama.
Sekarang jalankan server API lagi.
$ bin/python3 dapatkan.py
Saya meminta data untuk akun 1 dan 2 secara terpisah dan saya mendapatkan hasil yang diharapkan seperti yang Anda lihat dari tangkapan layar di bawah.
$curl http://127.0.0.1:8080/akun/1$curl http://127.0.0.1:8080/akun/2
Menambahkan Data Menggunakan POST di REST API:
Sekarang saya akan mengganti nama Dapatkan.py untuk api.py dan tambahkan titik akhir API /Akun untuk menambahkan data baru.
Ganti nama Dapatkan.py untuk api.py:
$mv -v dapatkan.py api.pyPertama, tambahkan baris (19-26) seperti yang ditandai pada tangkapan layar di bawah ke api.py mengajukan.
Sekarang jalankan api.py server:
$bin/python3 api.py
Untuk memasukkan data baru ke dalam into /Akun titik akhir, jalankan perintah berikut:
$ curl -X POST -H "Content-Type: application/json" -d '"name": "Shovon", "balance": 100'http://127.0.0.1:8080/akun
CATATAN: Sini, '"nama": "Shovon", "saldo": 100' adalah data input JSON.
Data harus dimasukkan.
Seperti yang Anda lihat, data baru ditambahkan.
Jadi itu saja untuk artikel ini. Terima kasih telah membaca artikel ini.