Flask 中的簡單測試 HTTP 伺服器

WBOY
發布: 2024-08-16 18:01:32
原創
405 人瀏覽過

A Simple Test HTTP server from Flask

昨晚我發現自己需要更新一些應用程式程式碼以從同步 http 呼叫切換到非同步呼叫。這不是一個特別難的問題,但要正確解決可能會很棘手。

因此,我需要的是一種測試這些 http 呼叫的方法,而我使用的機器尚未運行任何可用作目標的 http 伺服器。

沒問題:它有 Python - 這就是您所需要的。

不安裝 - 只需創建

這種模式已經在我身上形成了。對於簡單的任務,通常更容易編寫一些實用腳本,而不是安裝一些完整的軟體來完成工作。

如果您需要一個真正的伺服器,請務必使用它(但即使如此,如果可能的話,我還是建議使用 Docker)。但如果您只需要一個快速端點來測試或解決單一用例,那麼 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('/<path:path>', 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)

登入後複製

以上是Flask 中的簡單測試 HTTP 伺服器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!