Python は、サーバー プログラミングを含む多くの分野で使用されている非常に人気のあるプログラミング言語です。 Python による HTTP サーバーの作成は非常に簡単で、数行のコードで実装できます。この記事ではPythonを使ったHTTPサーバーの書き方を紹介します。
まず、Python をインストールする必要があります。Python をまだインストールしていない場合は、Python 公式 Web サイトにアクセスしてダウンロードしてください。インストールが完了したら、Python 独自のモジュールを使用して HTTP サーバーを実装できます。
Python では、HTTP サーバーを実装するためにソケット モジュールと http.server モジュールをインポートする必要があります。ソケット モジュールは多くの低レベル ネットワーク プログラミング インターフェイスを提供し、http.server モジュールは既製の HTTP サーバー実装を提供します。
import socket import http.server
HTTP サーバーの作成は非常に簡単で、http.server.HTTPServer クラスを使用して作成できます。 HTTPServer クラスは、サーバー アドレスとリクエストを処理するハンドラー クラスの 2 つのパラメーターを受け入れます。 http.server.BaseHTTPRequestHandler を継承して独自のリクエスト ハンドラーを実装できます。
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)
上記のコードでは、http.server.BaseHTTPRequestHandler
を継承する WebRequestHandler
という名前のクラスを作成しました。 do_GET
メソッドでは、GET リクエストに応じて HTTP レスポンスを送信します。次に、HTTPServer インスタンスを作成し、アドレスを localhost:8000
に設定し、リクエスト ハンドラーを WebRequestHandler
クラスに設定しました。
HTTP サーバーを作成したら、HTTP サーバーを起動し、クライアントからのリクエストのリッスンを開始する必要があります。これを実現するには、HTTPServer クラスのserve_forever() メソッドを使用します。
print('Starting server, use <Ctrl-C> to stop') httpd.serve_forever()
上記のコードでは、print
関数を使用して、サーバーが起動したことをユーザーに伝えるメッセージを出力します。次に、serve_forever
メソッドを呼び出して、Ctrl-C
信号を受信して停止するまで HTTP サーバーを実行し続けます。
単純な HTTP サーバーを実装したので、ブラウザまたはコマンド ライン ツールを使用してこのサーバーをテストできます。ブラウザのアドレス バーに http://localhost:8000
と入力します。すべてがうまくいけば、Hello, world!
メッセージを含む Web ページが表示されるはずです。ブラウザを使用しない場合は、curl を使用してこのサーバーをテストすることもできます。
$ curl http://localhost:8000 Hello, world!
結論
この記事では、Python の組み込みモジュールを使用してサーバーを作成する方法を紹介しました。 HTTPサーバー。クライアント要求を処理するための WebRequestHandler
クラスを作成し、次に HTTPServer クラスを使用して HTTP サーバーを作成して起動します。最後に、ブラウザまたはコマンド ライン ツールを使用してサーバーをテストしました。これは HTTP サーバー実装の単純な例にすぎません。独自のニーズに応じて、より複雑な機能を実装できます。
以上がPython サーバー プログラミングのクイック スタート: HTTP サーバーを簡単に実装するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。