天天看點

WSGI不同路徑傳回不同内容 | 手把手教你入門Python之一百一十四

上一篇: WSGI伺服器的介紹| 手把手教你入門Python之一百一十三 下一篇: 讀取檔案并傳回給浏覽器| 手把手教你入門Python之一百一十五 本文來自于千鋒教育在阿裡雲開發者社群學習中心上線課程 《Python入門2020最新大課》 ,主講人姜偉。

WSGI不同路徑傳回不同内容

from wsgiref.simple_server import make_server


def demo_app(environ, start_response):
    path = environ['PATH_INFO']

    # 狀态碼: RESTFUL ==> 前後端分離
    # 2XX: 請求響應成功
    # 3XX: 重定向
    # 4XX: 用戶端的錯誤。  404 用戶端通路了一個不存在的位址   405:請求方式不被允許
    # 5XX: 伺服器的錯誤。
    status_code = '200 OK'  # 預設狀态碼是 200
    if path == '/':
        response = '歡迎來到我的首頁'
    elif path == '/test':
        response = '歡迎阿裡到test頁面'
    elif path == '/demo':
        response = '歡迎來到demo頁面'
    else:
        status_code = '404 Not Found'  # 如果頁面沒有配置,傳回404
        response = '頁面走丢了'

    start_response(status_code, [('Content-Type', 'text/html;charset=utf8')])
    return [response.encode('utf8')]


if __name__ == '__main__':
    httpd = make_server('', 8080, demo_app)
    sa = httpd.socket.getsockname()
    print("Serving HTTP on", sa[0], "port", sa[1], "...")
    httpd.serve_forever()           

配套視訊