Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mula Pantas dengan Pengaturcaraan Pelayan Python: Melaksanakan Pelayan HTTP dengan Mudah

Mula Pantas dengan Pengaturcaraan Pelayan Python: Melaksanakan Pelayan HTTP dengan Mudah

WBOY
WBOYasal
2023-06-18 09:59:552475semak imbas

Python ialah bahasa pengaturcaraan yang sangat popular yang digunakan dalam banyak bidang, termasuk pengaturcaraan pelayan. Menulis pelayan HTTP melalui Python adalah sangat mudah dan boleh dilaksanakan dalam beberapa baris kod. Dalam artikel ini, kami akan memperkenalkan cara menulis pelayan HTTP menggunakan Python.

Pertama, kami perlu memasang Python Jika anda belum memasang Python lagi, anda boleh pergi ke tapak web rasmi Python untuk memuat turunnya. Selepas pemasangan selesai, kita boleh menggunakan modul Python sendiri untuk melaksanakan pelayan HTTP.

  1. Import soket dan modul http.server

Dalam Python, kita perlu mengimport modul soket dan http.server untuk melaksanakan pelayan HTTP. Modul soket menyediakan banyak antara muka pengaturcaraan rangkaian peringkat rendah, dan modul http.server menyediakan kami dengan pelaksanaan pelayan HTTP sedia dibuat.

import socket
import http.server
  1. Buat Pelayan HTTP

Mencipta pelayan HTTP adalah sangat mudah, kita boleh menggunakan kelas http.server.HTTPServer untuk mencipta satu. Kelas HTTPServer menerima dua parameter: alamat pelayan dan kelas pengendali untuk mengendalikan permintaan. Kami boleh mewarisi http.server.BaseHTTPRequestHandler untuk melaksanakan pengendali permintaan kami sendiri.

class WebRequestHandler(http.server.BaseHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.send_header('Content-type', 'text/html')
        self.end_headers()
        message = "Hello, world!"
        self.wfile.write(bytes(message, "utf8"))

httpd = http.server.HTTPServer(('localhost', 8000), WebRequestHandler)

Dalam kod di atas, kami telah mencipta kelas bernama WebRequestHandler, yang mewarisi daripada http.server.BaseHTTPRequestHandler. Dalam kaedah do_GET, kami menghantar respons HTTP sebagai tindak balas kepada permintaan GET. Kami kemudian mencipta contoh HTTPServer dan menetapkan alamat kepada localhost:8000 dan pengendali permintaan kepada kelas WebRequestHandler.

  1. Mulakan pelayan HTTP

Selepas mencipta pelayan HTTP, kita perlu memulakannya dan biarkan ia mula mendengar permintaan daripada pelanggan. Kita boleh menggunakan kaedah serve_forever() kelas HTTPServer untuk mencapai ini.

print('Starting server, use <Ctrl-C> to stop')
httpd.serve_forever()

Dalam kod di atas, kami menggunakan fungsi print untuk mengeluarkan mesej untuk memberitahu pengguna bahawa pelayan telah bermula. Kemudian kami memanggil kaedah serve_forever untuk memastikan pelayan HTTP berjalan sehingga isyarat Ctrl-C diterima untuk berhenti.

  1. Menguji Pelayan HTTP

Sekarang kami telah melaksanakan pelayan HTTP yang mudah, kami boleh menguji pelayan ini menggunakan penyemak imbas atau alat baris arahan. Taip http://localhost:8000 ke dalam bar alamat penyemak imbas anda dan jika semuanya berjalan lancar, anda akan melihat halaman web dengan mesej Hello, world!. Jika anda tidak menggunakan penyemak imbas, anda juga boleh menggunakan curl untuk menguji pelayan ini:

$ curl http://localhost:8000
Hello, world!

Kesimpulan

Dalam artikel ini, kami memperkenalkan cara menggunakan modul terbina dalam Python untuk mencipta pelayan HTTP. Kami mencipta kelas WebRequestHandler untuk mengendalikan permintaan pelanggan, dan kemudian menggunakan kelas HTTPServer untuk mencipta pelayan HTTP dan memulakannya. Akhirnya, kami menguji pelayan melalui pelayar atau alat baris arahan. Ini hanyalah contoh mudah pelaksanaan pelayan HTTP, anda boleh melaksanakan fungsi yang lebih kompleks mengikut keperluan anda sendiri.

Atas ialah kandungan terperinci Mula Pantas dengan Pengaturcaraan Pelayan Python: Melaksanakan Pelayan HTTP dengan Mudah. 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