亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

python的socket編程入門

系統 1519 0

Flask或者其他框架都是封裝的比較完善,我們可以不去關注路由、SESSION等到底是怎么實現的,現在我們使用socket來實現一個帶有注冊、登錄功能的To do網站,這樣能對后端框架了解的稍微更深入一點(當然你也可以直接去看Flask源碼)。

主程序runserver.py代碼如下:

            
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import socket
from exts import Request
from route import response_for_request
from datetime import datetime
def run_server(host='', port=1207):
  # 建立一個socket.socket()類s
  with socket.socket() as s:
    # 設置s在服務端關閉后馬上釋放端口,避免Address already in use錯誤
    s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    # 綁定host和port
    s.bind((host, port))
    while 1:
      # 開始監聽傳入連接,可以掛起的最大連接數為5
      s.listen(5)
      # 接受連接,根據buffer_size不斷讀取內容
      connection, address = s.accept()
      r = ''
      buffer_size = 1024
      while 1:
        data = connection.recv(1024).decode('utf-8')
        r += data
        if len(data) < buffer_size:
          break
      # 防止瀏覽器傳空請求過來
      if len(r.split()) < 2:
        continue
      # 最后取得的r是一個http請求頭字符串,對其解析,然后使用sendall返回相應的內容 
      request = Request(r)
      # 每次請求時打印時間,請求的方法和路徑
      print(str(datetime.now())[:19], request.method, request.path)
      response = response_for_request(request)
      connection.sendall(response)
      connection.close()
if __name__ == '__main__':
  run_server()
          

run_server函數代碼的簡單說明可以看注釋;from exts import Request:從exts導入一個Request類,這個Request類是自己編寫的,用于解析http請求頭,這部分是很簡單的,在網上搜索http請求相關內容,就可以自行寫一個,包括返回請求頭的路徑、方法、各個字段以及body部分等,都是字符串相關的操作。

from route import response_for_request:從route.py導入相應函數,即傳入一個上一步中的Request類,返回對應的網頁內容,具體實現將在后續講解。

可以說,主程序就已經編寫好了,整個邏輯也很簡單,使用socket監聽連接,解析請求,返回請求對應的內容。后續只要去處理解析請求和響應部分即可,主程序可以不用再修改。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 天天射天天干天天色 | 全部免费国产潢色一级 | 中文字幕三级久久久久久 | 色网在线免费观看 | 一级毛片在线视频 | 亚洲免费高清视频 | 欧洲性大片xxxxx久久久 | 国产成人综合在线视频 | 天天做.天天爱.天天综合网 | 国产精品麻豆视频 | 亚洲欧美一级久久精品 | 手机看片福利日韩欧美看片 | 成人97在线观看免费高清 | 四虎精品免费永久在线 | 特级aaa毛片 | 久久久久在线观看 | 97在线成人免费视频观看 | 国产欧美另类性视频 | 日本高清h色视频在线观看 日本高清不卡二区 | 特黄a大片免费视频 | 久久久久免费精品国产 | 日日干日日插 | 午夜性色福利视频在线视频 | 国产一级特黄a大片99 | 综合欧美日韩一区二区三区 | 亚洲欧美精品日韩欧美 | 国产成人乱码一区二区三区 | 久综合网| 五月天国产精品 | 免费一级成人免费观看 | 精品玖玖 | 日韩高清一区二区三区不卡 | 亚洲另类 专区 欧美 制服 | 欧美日韩国产一区二区三区欧 | 日本一级特级毛片视频 | 亚洲一区二区三区精品国产 | 欧美在线一区二区三区 | 日韩免费观看 | 久久国产欧美另类久久久 | 国产欧美日韩高清专区ho | 成人牲交一极毛片 |