欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python如何實現(xiàn) HTTP echo 服務器

 更新時間:2025年01月06日 11:36:44   作者:Toormi  
本文介紹了如何使用Python實現(xiàn)一個簡單的HTTPecho服務器,該服務器支持GET和POST請求,并返回JSON格式的響應,GET請求返回請求路徑、方法、頭和查詢字符串,POST請求還返回請求體內容,服務器的使用方法和測試示例也一并提供,感興趣的朋友跟隨小編一起看看吧

一個用來做測試的簡單的 HTTP echo 服務器。

from http.server import HTTPServer, BaseHTTPRequestHandler
import json
class EchoHandler(BaseHTTPRequestHandler):
    def do_GET(self):
        # 構造響應數(shù)據(jù)
        response_data = {
            'path': self.path,
            'method': 'GET',
            'headers': dict(self.headers),
            'query_string': self.path.split('?')[1] if '?' in self.path else ''
        }
        # 設置響應頭
        self.send_response(200)
        self.send_header('Content-Type', 'application/json')
        self.end_headers()
        # 發(fā)送響應
        self.wfile.write(json.dumps(response_data, indent=2).encode())
    def do_POST(self):
        # 獲取請求體長度
        content_length = int(self.headers.get('Content-Length', 0))
        # 讀取請求體
        body = self.rfile.read(content_length).decode()
        # 構造響應數(shù)據(jù)
        response_data = {
            'path': self.path,
            'method': 'POST',
            'headers': dict(self.headers),
            'body': body
        }
        # 設置響應頭
        self.send_response(200)
        self.send_header('Content-Type', 'application/json')
        self.end_headers()
        # 發(fā)送響應
        self.wfile.write(json.dumps(response_data, indent=2).encode())
def run_server(port=8000):
    server_address = ('', port)
    httpd = HTTPServer(server_address, EchoHandler)
    print(f'Starting server on port {port}...')
    httpd.serve_forever()
if __name__ == '__main__':
    run_server()

這個 HTTP echo 服務器的特點:

  • 支持 GET 和 POST 請求
  • 返回 JSON 格式的響應
  • 對于 GET 請求,會返回:
    • 請求路徑
    • 請求方法
    • 請求頭
    • 查詢字符串
  • 對于 POST 請求,額外返回請求體內容

使用方法:

  • 運行腳本啟動服務器
  • 使用瀏覽器或 curl 訪問 http://localhost:8000

測試示例:

# GET 請求
curl http://localhost:8000/test?foo=bar
# POST 請求
curl -X POST -d "hello=world" http://localhost:8000/test

到此這篇關于Python實現(xiàn)一個簡單的 HTTP echo 服務器的文章就介紹到這了,更多相關Python HTTP echo 服務器內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python判斷Nan值的五種方式小結

    Python判斷Nan值的五種方式小結

    這篇文章主要介紹了Python判斷Nan值的五種方式小結,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • python使用js2py庫運行js代碼

    python使用js2py庫運行js代碼

    本文主要介紹了thon使用js2py庫運行js代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-05-05
  • 十個常見的Python腳本詳細介紹及代碼舉例

    十個常見的Python腳本詳細介紹及代碼舉例

    這篇文章主要給大家介紹了十個常見的Python腳本的相關資料,包括批量重命名文件、下載網(wǎng)頁圖片、發(fā)送郵件通知、讀取和寫入CSV文件、爬取網(wǎng)頁數(shù)據(jù)、自動化測試、圖像處理、數(shù)據(jù)可視化以及創(chuàng)建簡單的Web應用,需要的朋友可以參考下
    2024-11-11
  • python類和繼承用法實例

    python類和繼承用法實例

    這篇文章主要介紹了python類和繼承用法,實例分析了Python類的定義與繼承的實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 在pycharm中debug 實時查看數(shù)據(jù)操作(交互式)

    在pycharm中debug 實時查看數(shù)據(jù)操作(交互式)

    這篇文章主要介紹了在pycharm中debug 實時查看數(shù)據(jù)操作(交互式),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • python實現(xiàn)多線程抓取知乎用戶

    python實現(xiàn)多線程抓取知乎用戶

    本文給大家分享的是如何使用Python實現(xiàn)多線程抓取知乎用戶的思路以及代碼,非常的詳細,作者使用本程序成功抓取到了百萬用戶,有需要的小伙伴可以參考下
    2016-12-12
  • Python中的getter與setter及deleter使用示例講解

    Python中的getter與setter及deleter使用示例講解

    這篇文章主要介紹了Python中的getter與setter及deleter使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧
    2023-01-01
  • 通過python封裝SQLite3的示例代碼

    通過python封裝SQLite3的示例代碼

    這篇文章主要介紹了使用 Python 封裝 SQLite3 的相關內容,包括創(chuàng)建數(shù)據(jù)庫實例、創(chuàng)建表、各種插入(單個、批量、字典等)、刪除(按條件、按 ID 等)、修改(多種方式)、查詢(單條、多條、分頁等)的示例及對應的實現(xiàn)代碼,需要的朋友可以參考下
    2024-11-11
  • 分享6 個值得收藏的 Python 代碼

    分享6 個值得收藏的 Python 代碼

    這篇文章主要分享了6 個值得收藏的 Python 代碼,希望隊長正在學習的你有所幫助,需要的小伙伴也可以參考一下
    2022-01-01
  • python模擬點擊在ios中實現(xiàn)的實例講解

    python模擬點擊在ios中實現(xiàn)的實例講解

    在本篇文章里小編給大家整理的是一篇關于python模擬點擊在ios中實現(xiàn)的實例講解內容,有需要的朋友們可以參考下。
    2020-11-11

最新評論