昨夜、同期 http 呼び出しから非同期呼び出しに切り替えるには、アプリのコードを更新する必要があることに気づきました。これは特に難しい問題ではありませんが、正解するのが難しい場合があります。
したがって、私に必要だったのは、これらの http 呼び出しをテストする方法でしたが、私が使用していたマシンには、ターゲットとして使用する http サーバーがまだ実行されていませんでした。
問題ありません。Python が含まれています。必要なのはそれだけです。
このパターンが私に形成されてきました。単純なタスクの場合は、本格的なソフトウェアをインストールしてジョブを実行するよりも、ちょっとしたユーティリティ スクリプトを作成する方が簡単なことがよくあります。
実際のサーバーが必要な場合は、ぜひそれを使用してください (ただし、その場合でも、可能であれば Docker をお勧めします)。ただし、テストするための、または 1 つのユースケースを解決するための簡単なエンドポイントが必要なだけの場合は、おそらく Python が最適です。
特に Python と言っているのは、Python は豊富な標準ライブラリとエコシステムを備えており、かなり普及しているからです。
このシンプルなサーバーのアイデアは、非同期クライアント呼び出しのテストを支援することであり、5 秒待ってから応答するようにしました。標準的な呼び出しに対して 5 秒後に 200 で応答するようにしたいだけでした。
from flask import Flask, request import time app = Flask(__name__) @app.route('/', defaults={'path': ''}, methods=['GET', 'POST', 'PUT', 'DELETE', 'PATCH']) @app.route('/', methods=['GET', 'POST', 'PUT', 'DELETE', 'PATCH']) def catch_all(path): print(f"Path: {path}") print(f"Headers: {dict(request.headers)}") print(f"Params: {request.args}") print(f"Data: {request.data}") # Wait for 5 seconds time.sleep(5) return "yessir" if __name__ == '__main__': app.run(host='0.0.0.0', port=5000)
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3