python SocketServer 簡單服務器例子

最近在看python的socket,SocketServer。試着寫了一個簡單的例子,容許多個客服端或瀏覽器同時訪問。這裏只寫了服務器,木寫客戶端,你能夠用瀏覽器訪問。不對的地方和須要完善的地方,請指出,你們一塊進步。 python

#server
from SocketServer import TCPServer, ThreadingMixIn, StreamRequestHandler

#建立多線程   容許多個客戶端同時訪問
class  server(TCPServer,ThreadingMixIn):
    pass

#該函數    對接收的數據進行處理加工
def changData(x):
    z=x.upper()
    return z

#繼承StreamRequestHandler類   ,改寫handle 函數
class dataHandle(StreamRequestHandler):
    def handle(self):
        cliend_ip=self.request.getpeername()  #獲得訪問服務器的ip 返回的是一個元組  ,包含 ip ,port
        print "client_ip:",cliend_ip
        data=self.request.recv(2048)#接收數據
        print "receive data:",data
        r='jkljll'
        self.wfile.write(changData(data))#向客服端發送數據
        self.wfile.write('\n')
        self.wfile.write(data)#向客服端發送數據

servers=server(('192.168.0.108',1278),dataHandle)#server()須要兩個參數,一個是(ip,port),另外一個是繼承StreamRequestHandler後的類
servers.serve_forever() # 服務器無限循環運行
相關文章
相關標籤/搜索