Python

Membuat REST API di Python

Membuat REST API di Python
REST atau Representation State Transfer adalah gaya pengembangan perisian yang digunakan terutamanya dalam reka bentuk Antaramuka Pengaturcaraan API atau Aplikasi untuk membina perkhidmatan web interaktif dan moden. Ia juga dikenali sebagai perkhidmatan web RESTful.

Python adalah bahasa pengaturcaraan yang hebat. Ia mempunyai banyak perpustakaan untuk membina REST atau RESTful API. Salah satu perpustakaan yang popular untuk membina aplikasi web dan menulis API REST adalah Kelalang.

Dalam artikel ini, saya akan menunjukkan kepada anda cara membuat API REST di Python menggunakan Flask. Mari kita mulakan.

Keperluan:

Anda mesti mempunyai

Anda seharusnya dapat mencari artikel dan tutorial mengenai semua topik ini di LinuxHint.com

Saya akan menggunakan Python 3 on Debian 9 Stretch dalam artikel ini. Sekiranya anda menggunakan Python 2, anda perlu menyesuaikan sedikit. Anda seharusnya dapat mengetahuinya sendiri kerana semudah menulis ular sawa bukannya ular sawa3 dan pip bukannya pip3.

Menyiapkan Persekitaran Maya:

Secara sederhana, persekitaran maya digunakan untuk mengasingkan satu aplikasi Python dari yang lain. Pakej Python yang biasa dilakukan ialah virtualenv.

Anda boleh memasang dengan mudah virtualenv menggunakan PIP pada komputer anda dengan arahan berikut:

$ sudo -H pip3 pasang virtualenv

Sekarang buat direktori projek (mari kita panggil perompak /) dengan arahan berikut:

$ mkdir pyrest

Sekarang buat persekitaran maya Python di perompak / direktori projek dengan arahan berikut:

$ virtualenv pyrest /

Sekarang arahkan ke direktori projek dengan arahan berikut:

pyrest $ cd

Kemudian, aktifkan persekitaran maya Python dengan arahan berikut:

$ sumber tong / aktifkan

Akhirnya, jalankan arahan berikut untuk memasang perpustakaan Flask Python:

$ bin / pip3 memasang termos

Menulis Skrip Kelalang Pertama Anda:

Pada bahagian ini, saya akan menulis program hello world di Python Flask.

Pertama, buat fail hello.py dalam direktori projek anda:

$ sentuh salam.py

Sekarang tambahkan baris berikut ke hello.py fail dan simpan.

Di bahagian seterusnya, saya akan menunjukkan kepada anda cara menjalankan skrip Flask.

Menjalankan Skrip Flask:

Sekarang untuk memulakan hello.py Pelayan flask, jalankan arahan berikut:

$ bin / python3 halo.py

Seperti yang anda lihat, pelayan telah bermula http: // 127.0.0.1: 8080.

Sekarang, anda boleh mengakses pelayan Flask http: // 127.0.0.1: 8080 dari penyemak imbas web atau perisian pengujian API seperti Postman. Saya akan menggunakan CURL.

$ curl http: // 127.0.0.1: 8080

Seperti yang anda lihat, output yang betul dicetak pada skrin.

Tahniah! Flask berfungsi.

Mengakses Data Menggunakan GET di REST API:

Permintaan GET pada REST API digunakan untuk mengambil maklumat dari pelayan API. Anda menetapkan beberapa titik akhir API dan melakukan permintaan GET pada titik akhir itu. Ia mudah.

Pertama, buat fail baru dapatkan.py dalam direktori projek anda dengan arahan berikut:

$ sentuh dapatkan.py

Sekarang tambahkan baris berikut di dapatkan.py fail dan simpan.

Di sini, pada baris 1, Kelalang fungsi pembina dan jsonify fungsi diimport dari modul termos.

Pada baris 3, a Kelalang objek dibuat dan disimpan di aplikasi pemboleh ubah.

Pada baris 5, saya membuat pelbagai kamus Python dari beberapa data palsu dan menyimpannya di akaun pemboleh ubah.

Pada baris 10, saya menentukan titik akhir API / akaun dan kaedah permintaan, iaitu DAPATKAN.

Pada baris 11, saya menentukan fungsi dapatkanAkaun (). dapatkanAkaun () fungsi akan dilaksanakan apabila permintaan GET untuk / akaun titik akhir dibuat.

Baris 12, yang merupakan sebahagian daripada dapatkanAkaun () fungsi, saya menukar akaun pelbagai kamus ke JSON menggunakan jsonify () berfungsi dan mengembalikannya.

Pada talian 14-15, saya memanggil aplikasi.lari () untuk memberitahu Flask untuk menjalankan pelayan API di port 8080.

Sekarang jalankan pelayan Flask API dengan arahan berikut:

$ bin / python3 dapatkan.py

Pelayan telah bermula di port 8080.

Sekarang buat permintaan GET ke / akaun titik akhir dengan CURL seperti berikut:

$ curl http: // 127.0.0.1: 8080 / akaun

Seperti yang anda lihat, data akaun ditampilkan sebagai format JSON pada permintaan GET pada / akaun titik akhir.

Anda juga boleh mendapatkan data akaun tertentu. Untuk melakukan itu, saya akan membuat titik akhir API yang lain / akaun /. Di sini, akan menjadi ID pemegang akaun. ID di sini adalah indeks tatasusunan.

Edit dapatkan.py skrip dan tambahkan garis yang ditandakan kepadanya.

Di sini, pada baris 14, saya menentukan titik akhir API / akaun / dan kaedah yang akan digunakan, iaitu DAPATKAN.

Pada baris 15-17, fungsi dapatkanAkaun () untuk titik akhir API / akaun / ditakrifkan. The dapatkanAkaun () fungsi menerima a ID sebagai hujah. Nilai dari titik akhir API ditetapkan ke ID pemboleh ubah dari dapatkanAkaun () fungsi.

Pada baris 16, the ID pemboleh ubah ditukar menjadi integer. Saya juga menyimpulkan 1 dari ID pemboleh ubah. Kerana indeks array bermula dari 0. Saya mahu memulakan ID akaun dari 1. Jadi jika saya meletakkan 1 sebagai akaun , 1 - 1 = 0, saya akan mendapatkan elemen pada indeks 0 dari tatasusunan akaun.

Pada baris 17, susunan pada indeks dikembalikan sebagai JSON.

Selebihnya kodnya sama.

Sekarang jalankan pelayan API sekali lagi.

$ bin / python3 dapatkan.py

Saya meminta data untuk akaun 1 dan 2 secara berasingan dan saya mendapat hasil yang diharapkan seperti yang anda lihat dari tangkapan skrin di bawah.

$ curl http: // 127.0.0.1: 8080 / akaun / 1
$ curl http: // 127.0.0.1: 8080 / akaun / 2

Menambah Data Menggunakan POST di REST API:

Sekarang saya akan menamakan semula dapatkan.py ke api.py dan tambahkan titik akhir API / akaun kerana menambah data baru.

Namakan semula dapatkan.py ke api.py:

$ mv -v dapatkan.py api.py

Pertama, tambahkan garis (19-26) seperti yang ditunjukkan dalam tangkapan skrin di bawah ke api.py fail.

Sekarang jalankan api.py pelayan:

$ bin / python3 api.py

Untuk memasukkan data baru ke dalam / akaun titik akhir, jalankan arahan berikut:

$ curl -X POST -H "Content-Type: application / json" -d '"name": "Shovon", "balance": 100'
http: // 127.0.0.1: 8080 / akaun

NOTA: Di sini, '"Nama": "Shovon", "keseimbangan": 100' adalah data input JSON.

Data harus dimasukkan.

Seperti yang anda lihat, data baru ditambahkan.

Jadi itu untuk artikel ini.  Terima kasih kerana membaca artikel ini.

Emulator Konsol Permainan Terbaik untuk Linux
Artikel ini akan menyenaraikan perisian emulasi konsol permainan popular yang tersedia untuk Linux. Emulation adalah lapisan keserasian perisian yang ...
Distro Linux Terbaik untuk Permainan pada tahun 2021
Sistem operasi Linux telah jauh dari tampilan asal, ringkas dan berasaskan pelayan. OS ini telah berkembang pesat dalam beberapa tahun kebelakangan in...
Cara menangkap dan streaming sesi permainan anda di Linux
Pada masa lalu, bermain permainan hanya dianggap sebagai hobi, tetapi seiring dengan berjalannya waktu, industri permainan menyaksikan pertumbuhan yan...