Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Amalan terbaik untuk menulis API web dalam Python

Amalan terbaik untuk menulis API web dalam Python

WBOY
WBOYasal
2023-06-17 16:37:402708semak imbas

Dengan perkembangan era Internet, API Web telah menjadi bahagian penting dalam pembangunan aplikasi Internet. Sebagai bahasa pengaturcaraan yang cekap dan boleh dibaca, bahasa Python juga memainkan peranan penting dalam pembangunan API Web. Artikel ini akan memperkenalkan amalan terbaik untuk menulis API Web dalam Python untuk membantu pembangun lebih memahami idea reka bentuk dan kaedah pembangunan API Web.

1. Reka Bentuk RESTful API

Apabila mereka bentuk API Web, RESTful API ialah gaya reka bentuk yang paling biasa digunakan. RESTful API ialah API Web yang mengikut prinsip REST, yang bermaksud Pemindahan Negeri Perwakilan. Ia pada asasnya adalah idea reka bentuk seni bina berdasarkan protokol HTTP, yang boleh mengubah aplikasi rangkaian menjadi satu set sumber yang boleh digunakan, membolehkan pelanggan berinteraksi melalui rangkaian.

Apabila mereka bentuk API RESTful, anda perlu mempertimbangkan aspek berikut:

  1. Penamaan objek: Objek diwakili oleh alamat URI dalam API RESTful. Oleh itu, alamat URI perlu ditakrifkan mengikut peraturan penamaan objek Sebagai contoh, "/users/:id" bermaksud menanyakan maklumat pengguna.
  2. Gunakan predikat HTTP: Predikat HTTP ialah kata kerja HTTP, termasuk GET, POST, PUT, DELETE, dsb. Operasi yang berbeza pada sumber yang sama harus menggunakan kata kerja HTTP yang berbeza.
  3. Format data: RESTful API boleh menerima pelbagai format data, seperti JSON, XML, HTML, dll. Format data perlu dipilih mengikut situasi sebenar.

2. Gunakan rangka Flask

Dalam Python, terdapat banyak rangka kerja yang boleh digunakan untuk membangunkan API Web, seperti Django, Flask, Tornado, dll. Antaranya, Flask adalah rangka kerja yang paling ringan dan sangat sesuai untuk pembangunan aplikasi kecil. Rangka kerja Flask dibina pada Werkzeug dan Jinja2 dan boleh mengendalikan permintaan dan respons HTTP, menyediakan enjin templat dan fungsi lain.

Apabila menggunakan rangka kerja Flask, anda perlu memberi perhatian kepada perkara berikut:

  1. Install Flask: Anda boleh menggunakan arahan pip untuk memasang Flask, seperti pip install Flask.
  2. Buat aplikasi Flask: Aplikasi Flask boleh dibuat dengan pernyataan berikut:

dari Flask import Flask
app = Flask(__name__)

  1. Tentukan laluan: Dalam aplikasi Flask, laluan perlu ditakrifkan untuk mengendalikan permintaan dan respons HTTP. Laluan boleh ditakrifkan menggunakan penghias yang disediakan oleh Flask, contohnya:

@app.route('/users')
def users():
return 'Hello, Users! '

3. Gunakan dokumentasi Swagger

Dalam pembangunan API Web, dokumentasi API juga merupakan bahagian yang sangat penting. Swagger ialah spesifikasi dokumentasi API yang sangat popular yang boleh memudahkan proses penulisan dokumen dengan menjana dokumen secara automatik. Spesifikasi swagger termasuk perihalan API, struktur data permintaan dan tindak balas, takrifan parameter, mesej ralat, dsb.

Apabila menggunakan dokumentasi Swagger, anda perlu memberi perhatian kepada perkara berikut:

  1. Pasang Swagger: Anda boleh menggunakan arahan pip untuk memasang Swagger, seperti pip install Flask-Swagger .
  2. Tulis perihalan API: Dalam aplikasi Flask, anda boleh menggunakan penghias yang disediakan oleh Flask-Swagger untuk menulis penerangan API. Contohnya:

@app.route('/users/{id}')
@swag_from('swagger/users.yml')
def get_user(id):
...

  1. Menjana dokumentasi secara automatik: Selepas menulis penerangan API, anda boleh menggunakan alat Swagger UI untuk menjana dokumentasi API secara automatik. Sebagai contoh, dokumentasi API boleh diakses di alamat berikut: http://127.0.0.1:5000/apidocs/index.html.

4. Gunakan SQLAlchemy untuk pengurusan data

Dalam pembangunan API Web, pengurusan data adalah sangat penting. SQLAlchemy ialah kit alat pangkalan data Python yang boleh melaksanakan fungsi ORM (pemetaan hubungan objek) dan membantu pembangun melaksanakan operasi pangkalan data dengan lebih mudah.

Apabila menggunakan SQLAlchemy, anda perlu memberi perhatian kepada perkara berikut:

  1. Memasang SQLAlchemy: Anda boleh menggunakan arahan pip untuk memasang SQLAlchemy, seperti pip install SQLAlchemy.
  2. Buat sambungan pangkalan data: Anda boleh membuat sambungan pangkalan data melalui pernyataan berikut:

dari flask_sqlalchemy import SQLAlchemy
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql: //user :pass@localhost/dbname'
db = SQLAlchemy(app)

  1. Tentukan model data: Fungsi ORM boleh dilaksanakan dengan mentakrifkan model data. Contohnya:

Pengguna kelas(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String( 80 ), unique=True, nullable=False)
e-mel = db.Column(db.String(120), unique=True, nullable=False)

5 >

Dalam pembangunan API Web, ujian unit adalah sangat penting. Pytest ialah rangka kerja ujian Python yang sangat popular yang sangat mudah digunakan. Ia secara automatik boleh menemui dan menjalankan ujian unit Python, dan menyediakan pernyataan ujian yang kaya dan kaedah output.

Apabila menggunakan Pytest untuk ujian unit, anda perlu memberi perhatian kepada perkara berikut:

    Pasang Pytest: Anda boleh menggunakan arahan pip untuk memasang Pytest, seperti pip install pytest .
  1. Tulis kes ujian: Anda boleh mencipta folder ujian untuk menyimpan kes ujian, seperti test_users.py. Dalam kes ujian, permintaan HTTP boleh disimulasikan dengan mengimport aplikasi Flask. Contohnya:
def test_get_users(client):

response = client.get('/users')
assert response.status_code == 200

    Jalankan kes ujian: Anda boleh menggunakan perintah pytest untuk menjalankan kes ujian, seperti pytest test_users.py.
6. Gunakan API Web

Selepas melengkapkan pembangunan API Web, ia perlu digunakan ke pelayan. Terdapat banyak cara untuk menggunakan aplikasi Python, seperti melalui bekas Docker, Perkhidmatan Web Amazon, Google Cloud dan banyak lagi.

Apabila menggunakan API Web, anda perlu memberi perhatian kepada perkara berikut:

  1. Persekitaran maya: Anda perlu menggunakan persekitaran maya untuk mengasingkan persekitaran Python sistem dan perpustakaan bergantung API Web.
  2. Pelayan WSGI: Pelayan WSGI diperlukan untuk menggunakan API Web. WSGI ialah antara muka gerbang pelayan web Python, yang boleh memisahkan aplikasi web Python daripada pelayan web.
  3. Pengurusan log: Apabila menggunakan API Web, pengurusan log perlu dilaksanakan untuk mengesan dan menyelesaikan masalah dengan cepat.

Ringkasan

Artikel ini memperkenalkan amalan terbaik untuk menulis API Web dalam Python, termasuk mereka bentuk API RESTful, menggunakan rangka kerja Flask, menggunakan dokumentasi Swagger, menggunakan SQLAlchemy untuk pengurusan data dan menggunakan ujian unit Pytest Conduct dan gunakan API Web, dsb. Saya harap artikel ini dapat membantu pembangun Python lebih memahami idea reka bentuk dan kaedah pembangunan API Web, serta meningkatkan kecekapan dan kualiti pembangunan API Web.

Atas ialah kandungan terperinci Amalan terbaik untuk menulis API web dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn