PythonによるHTTPサービスとファイル共有サービスの迅速な構築
2591 ワード
SimpleHTTPServerはPythonが持っているHTTPサービスクラスで、それを使用することで、私たちは任意のプラットフォーム(Window、Linux、MacOS)でHTTPサービスと共有サービスを迅速に構築することができ、Python環境をインストールするだけでいい.
使用方法
特定のポートで実行されるファイル共有サービスを開くには、次のコマンドを実行します.
python -m SimpleHTTPServer [port]
現在のディレクトリの下にあるファイルとディレクトリが表示されます.ポートを指定しない場合は、デフォルトは8000です.
もちろん、上記のコマンドはHTTPサービスも開始しています.現在の実行ディレクトリの下にファイルtestがあると仮定すると、このように要求できます.
curl "http://localhost:8000/test" -v
リクエスト結果はtestの中身
用途
ソフトウェア開発プロセスは複数の人が協力しています.プロジェクトが他の人のHTTPインタフェースに依存している場合、SimpleHTTPServerを使用して依存するインタフェースをmockすることができます.これにより、連調の速度を速め、プログラムの問題を早期にデバッグすることができます.一般的に私たちのファイルではjson列を使用して結果をシミュレートします.
不足
pythonシステムに付属しているSimpleHTTPServerはGETとHEADメソッドのみをサポートし、POSTメソッドはサポートしていません(テスト環境はpython 2.7.10)、簡単な修正が必要です
#
def do_GET(self):
"""Serve a GET request."""
f = self.send_head()
if f:
try:
self.copyfile(f, self.wfile)
finally:
f.close()
def do_HEAD(self):
"""Serve a HEAD request."""
f = self.send_head()
if f:
f.close()
SimpeHTTPServerメソッドをコピーし、do_を実装できます.POSTメソッドでOK
def do_POST(self):
"""Serve a POST request."""
self.do_GET()
ファイルを保存して実行すれば、POST方式要求をサポートできる