[ad_1]
Selamat datang Gaes di suratpembaca.web.id. Hari ini kita akan membicarakan tentang Linux yakni Buat RESTful API menggunakan Python dan MySQL
.
Semoga postingan mengenai Buat RESTful API menggunakan Python dan MySQL
dapat memberikan manfaat bagi Sahabat semua. Yuk baca artikel ini
sampai tuntas.
RESTFul API adalah konsep lanjutan pengembangan web yang diimplementasikan pada server menggunakan metode HTTP (DAPATKAN / POSTING / PUT / HAPUS) Untuk menangani data. Metode dan sumber daya permintaan HTTP diidentifikasi menggunakan URI, dan operasi dikelola sesuai dengan itu.
Jika Anda berpikir untuk mengimplementasikan API RESTful Python, Anda berada di tempat yang tepat. Dalam tutorial kami sebelumnya, Anda telah mempelajari cara mengimplementasikan RESTFul API dengan CodeIgniter. Dalam tutorial ini Anda akan belajar cara membuat Python RESTFul API menggunakan MYSQL.
Kami menyediakan tutorial ini dengan contoh langsung menggunakan metode HTTP seperti (DAPATKAN / POSTING / PUT / HAPUS) Untuk mengimplementasikan Python RESTFul API dengan operasi CRUD.
Kami harap Anda telah menginstal Python di Windows atau Linux Anda dengan Python dan paket-paketnya. Disini kami menggunakan Python versi 3.10.4. Kami akan menggunakan flask
kan flask-mysql
Dan flask-cors
Modul.
Baca juga:
Jadi mari kita buat RESTful API menggunakan Python dan MySQL. Kami memiliki direktori proyek restful-api-python
Dan file utamanya adalah:
Langkah 1: Buat tabel database MySQL
Saat kami mengimplementasikan RESTful API untuk operasi CRUD, kami juga akan membuat tabel database MySQL. emp
Untuk melakukan operasi, pertama-tama kita buat database MySQL rest-api
Dan kemudian buat tabelnya emp
Menggunakan perintah untuk membuat tabel di bawah ini
CREATE TABLE `emp` ( `id` int(11) NOT NULL, `name` varchar(255) NOT NULL, `email` varchar(255) NOT NULL, `phone` varchar(16) DEFAULT NULL, `address` text DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; ALTER TABLE `emp` ADD PRIMARY KEY (`id`); ALTER TABLE `emp` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
Langkah 2: Masukkan modul labu
Saat kami mengelola menggunakan fungsi REST API Flask
Dan MySQL
, Jadi kita akan membutuhkan kedua modul. modul Flask
Saat bekerja sebagai kerangka kerja web MySQL
Modul ini diperlukan untuk terhubung ke database MySQL.
Jadi pertama-tama kita buat direktori proyek restful-api-python
Dan bergerak menggunakan cd
Memerintah
Kemudian kita akan menginstal flask
Modul dengan menjalankan perintah berikut
pip install Flask
Kami juga akan menginstal flask-cors
Aplikasi ekstensi berbagi sumber daya (CORS), yang memungkinkan lintas sumber.
pip install -U flask-cors
Jadi sekarang kita akan membuatnya app.py
Skrip python dan masukkan flask
Modul dan buat flask
Contoh untuk digunakan dengan MySQL
Modul. Kita juga akan memasukkan kode> extension flask-cors untuk cross source.
from flask import Flask from flask_cors import CORS, cross_origin app = Flask(__name__) CORS(app)
Ste3: Buat koneksi MySQL
Kita harus menginstal Flask-MySQL
Ekstensi yang memungkinkan Anda mengakses database MySQL. Kami akan menginstal Flask-MySQL
Ekstensi menggunakan perintah berikut
pip install flask-mysql
Kami akan membuat config.py
File python untuk menginisialisasi detail koneksi database MySQL untuk terhubung ke database MySQL. Kami akan mengimpor app
Script untuk mengelola komunikasi database MySQL dengan Flask-MySQL
Modul.
Seperti yang kita buat database MySQL sebelumnya rest-api
Jadi kami akan terhubung dengan memberikan detail koneksi.
from app import app from flaskext.mysql import MySQL mysql = MySQL() app.config['MYSQL_DATABASE_USER'] = 'root' app.config['MYSQL_DATABASE_PASSWORD'] = '' app.config['MYSQL_DATABASE_DB'] = 'rest-api' app.config['MYSQL_DATABASE_HOST'] = 'localhost' mysql.init_app(app)
Langkah 4: Buat operasi REST API CRUD
Kami akan membuat main.py
Skrip dan masukkan app
Dan config
Modul Kami terhubung ke database MySQL dan mengimplementasikan operasi CRUD dengan mendefinisikan semua REST URI.
Di sini kami telah menggunakan POST
Metode HTTP untuk membuat record karyawan baru di database MySQL. kami telah menggunakan GET
Metode HTTP digunakan untuk mengambil semua catatan karyawan atau catatan individu PUT
Metode HTTP untuk memperbarui riwayat karyawan. Juga telah dilaksanakan DELETE
Metode HTTP untuk menghapus catatan. Jika tidak ada catatan yang ditemukan, metode 404 didefinisikan untuk menangani kesalahan yang tidak ditemukan.
import pymysql from app import app from config import mysql from flask import jsonify from flask import flash, request @app.route('/create', methods=['POST']) def create_emp(): try: _json = request.json _name = _json['name'] _email = _json['email'] _phone = _json['phone'] _address = _json['address'] if _name and _email and _phone and _address and request.method == 'POST': conn = mysql.connect() cursor = conn.cursor(pymysql.cursors.DictCursor) sqlQuery = "INSERT INTO emp(name, email, phone, address) VALUES(%s, %s, %s, %s)" bindData = (_name, _email, _phone, _address) cursor.execute(sqlQuery, bindData) conn.commit() respone = jsonify('Employee added successfully!') respone.status_code = 200 return respone else: return showMessage() except Exception as e: print(e) finally: cursor.close() conn.close() @app.route('/emp') def emp(): try: conn = mysql.connect() cursor = conn.cursor(pymysql.cursors.DictCursor) cursor.execute("SELECT id, name, email, phone, address FROM emp") empRows = cursor.fetchall() respone = jsonify(empRows) respone.status_code = 200 return respone except Exception as e: print(e) finally: cursor.close() conn.close() @app.route('/emp/') def emp_details(emp_id): try: conn = mysql.connect() cursor = conn.cursor(pymysql.cursors.DictCursor) cursor.execute("SELECT id, name, email, phone, address FROM emp WHERE id =%s", emp_id) empRow = cursor.fetchone() respone = jsonify(empRow) respone.status_code = 200 return respone except Exception as e: print(e) finally: cursor.close() conn.close() @app.route('/update', methods=['PUT']) def update_emp(): try: _json = request.json _id = _json['id'] _name = _json['name'] _email = _json['email'] _phone = _json['phone'] _address = _json['address'] if _name and _email and _phone and _address and _id and request.method == 'PUT': sqlQuery = "UPDATE emp SET name=%s, email=%s, phone=%s, address=%s WHERE id=%s" bindData = (_name, _email, _phone, _address, _id,) conn = mysql.connect() cursor = conn.cursor() cursor.execute(sqlQuery, bindData) conn.commit() respone = jsonify('Employee updated successfully!') respone.status_code = 200 return respone else: return showMessage() except Exception as e: print(e) finally: cursor.close() conn.close() @app.route('/delete/ ', methods=['DELETE']) def delete_emp(id): try: conn = mysql.connect() cursor = conn.cursor() cursor.execute("DELETE FROM emp WHERE id =%s", (id,)) conn.commit() respone = jsonify('Employee deleted successfully!') respone.status_code = 200 return respone except Exception as e: print(e) finally: cursor.close() conn.close() @app.errorhandler(404) def showMessage(error=None): message = 'status': 404, 'message': 'Record not found: ' + request.url, respone = jsonify(message) respone.status_code = 404 return respone if __name__ == "__main__": app.run()
Langkah 5: Jalankan program
Sekarang kita pergi ke direktori proyek restful-api-python
Dan jalankan perintah python main.py
Dan server diatur pada port default 5000. Kami akan menggunakannya sekarang Tukang pos Untuk menjalankan API RESTful Python dengan (Posting, terima, tempel, atau hapus) Metode tes
Jalankan URL berikut melalui HTTP GET
Cara untuk mendapatkan semua karyawan dan menampilkan data dalam format JSON.
http://localhost:5000/emp
Data JSON berikut akan dikembalikan:
Kami menerima catatan karyawan dalam data JSON dengan ID 1 menggunakan URL berikut GET
metode HTTP
http://localhost:5000/emp/1
Jawaban untuk data JSON adalah:
Kami akan membuat rekor karyawan baru dengan POST
metode HTTP
http://localhost:5000/create
Badan aplikasi akan menjadi sebagai berikut:
Respon Karyawan Data JSON menambahkan pesan.
Kami akan memperbarui riwayat karyawan yang ada menggunakan No. 1 PUT
metode HTTP
http://localhost:5000/update
Badan aplikasi akan menjadi sebagai berikut:
Karyawan membalas pesan pembaruan.
Kami akan menghapus karyawan yang ada dengan nomor ID 3 yang menggunakannya DELETE
metode HTTP
http://localhost:5000/delete/4
Karyawan itu membalas pesan penghapusan.
Anda telah menyelesaikan tutorial Python RESTFul API menggunakan Flask dan MySQL dengan sebuah contoh. Anda dapat menerapkan ini dalam proyek Anda sesuai dengan kebutuhan Anda. Jika Anda memiliki pertanyaan, Anda dapat mengirimkan komentar berharga Anda. Terima kasih!
Anda mungkin juga menyukai:
Anda dapat mengunduh skrip lengkap dari tautan unduhan di bawah ini.
Unduh
Demikian materi tentang Buat RESTful API menggunakan Python dan MySQL
, terimakasih telah berkunjung di website ini, mudah-mudahan postingannya ada manfaatnya ya.
[ad_2]
Source link