【Python】WSGI簡單Web服務器,處理GET和POST請求-創新互聯

【Python】WSGI簡單Web服務器,處理GET和POST請求
    • Python服務器代碼
    • 靜態HTML文件代碼

創新互聯建站成立與2013年,是專業互聯網技術服務公司,擁有項目網站設計制作、成都網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元珠暉做網站,已為上家服務,為珠暉各地企業和個人服務,聯系電話:13518219792Python服務器代碼
"""
Small wsgiref based web server. Takes a path to serve from and an
optional port number (defaults to 8000), then tries to serve files.
MIME types are guessed from the file names, 404 errors are raised
if the file is not found.
"""
import mimetypes
import os
import sys
from wsgiref import simple_server, util
from urllib.parse import parse_qs


def app(environ, respond):
    get_query_ =environ['QUERY_STRING']
    post_query_=environ["wsgi.input"].read(int(e)).decode("utf-8", 'ignore') if (e:=environ.get("CONTENT_LENGTH")) else None
    get_query =parse_qs(get_query_)
    post_query=parse_qs(post_query_)

    print("REQUEST_METHOD: "+environ['REQUEST_METHOD'])
    print("GET : ",(get_query))
    print("POST: ",(post_query))

    if(environ["PATH_INFO"].startswith(r"/post")):
        respond("200 OK", [("Content-Type", "text/html; charset=utf-8")])
        message=("Welcome, "+e[0]+" !") if (e:=post_query.get('username')) else "Welcome ! "
        html = ''' Post page   %s  
                Post Data:
%s
Path:
%s
''' %( message, str(post_query), environ["PATH_INFO"]) return [html.encode("utf-8")] else: # Get the file name and MIME type fn = os.path.join(path,"res", environ["PATH_INFO"][1:]) if "." not in fn.split(os.path.sep)[-1]: fn = os.path.join(fn, "index.html") mime_type = mimetypes.guess_type(fn)[0] # Return 200 OK if file exists, otherwise 404 Not Found if os.path.exists(fn): respond("200 OK", [("Content-Type", mime_type)]) return util.FileWrapper(open(fn, "rb")) else: respond("404 Not Found", [("Content-Type", "text/plain")]) return [b"not found"] if __name__ == "__main__": # Get the path and port from command-line arguments path = sys.argv[1] if len(sys.argv) >1 else os.getcwd() port = int(sys.argv[2]) if len(sys.argv) >2 else 8000 # Make and start the server until control-c httpd = simple_server.make_server("", port, app) print(f"Serving {path} on port {port}, control-C to stop") try: httpd.serve_forever() except KeyboardInterrupt: print("Shutting down.") httpd.server_close()
靜態HTML文件代碼
?????
username:
password:
文本框:
download

你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

新聞名稱:【Python】WSGI簡單Web服務器,處理GET和POST請求-創新互聯
瀏覽地址:http://m.kartarina.com/article16/cdcjgg.html

成都網站建設公司_創新互聯,為您提供網站維護響應式網站定制開發微信公眾號企業網站制作標簽優化

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

外貿網站制作
主站蜘蛛池模板: 无码夜色一区二区三区| 亚洲综合一区无码精品| 亚洲人成影院在线无码观看| 内射人妻无套中出无码| 亚洲日韩激情无码一区| 亚洲heyzo专区无码综合| 亚洲精品成人无码中文毛片不卡| 亚洲看片无码在线视频| 亚洲av无码成人影院一区| 自慰无码一区二区三区| 中文字幕AV无码一区二区三区| 人妻中文无码久热丝袜| 蜜臀亚洲AV无码精品国产午夜.| 久久亚洲AV无码精品色午夜| 伊人久久精品无码二区麻豆| 无码人妻少妇伦在线电影| 亚洲日韩中文字幕无码一区| 无码少妇一区二区性色AV | 韩日美无码精品无码| 中文字幕无码视频手机免费看| 成人无码AV一区二区| 一级片无码中文字幕乱伦| 亚洲爆乳少妇无码激情| 中文字幕无码高清晰| 日韩精品无码一本二本三本| 亚洲AV无码一区东京热| 国产精品ⅴ无码大片在线看| 潮喷大喷水系列无码久久精品 | 国产精品白浆在线观看无码专区 | 亚洲自偷自偷偷色无码中文| 中日韩精品无码一区二区三区| 少妇无码一区二区二三区| 亚洲中文字幕无码久久2017 | 精品久久久久久无码不卡| 久久精品九九热无码免贵| 亚洲VA中文字幕无码毛片| 亚洲VA中文字幕无码一二三区 | 亚洲精品无码久久一线| 少妇性饥渴无码A区免费 | av潮喷大喷水系列无码| 久久久久亚洲精品无码蜜桃 |