*SocketServer模块
SocketServer模块的类 描述
BaseServer 包含服务器的核心功能与混合类的钩子功能
TCPServer/UDPServer 基本的网络同步TCP/UDP服务器
UnixStreamSerer/UnixDatagramServer 基于文件同步TCP/UDP服务器
ForkingMixIn/ThreadingMixin 实现了核心的进程化或线程化的功能
BaseRequestHandler 包含处理服务请求的核心功能。
例子:
使用SocketSerer模块实现上面的程序
import SocketServer
from time import ctime
HOST = ' '
PORT = 21234
class MyRequestHandler(SRH):
def handle(self):
print '...connected from:',self.client_address
self.wfile.write('[%s]%s'%(ctime(),self.rfile.readline()))
tcpServ = TCP((HOST,PORT),MyRequestHandler)
print 'waiting for connection...'
tcpServ.serve_forever()
使用SocketServer时间戳TCP客户端
from socket import *
HOST = 'localhost'
PORT = 21234
BUFSIZ = 1024
ADDR = (HOST,PORT)
while True:
tcpCliSock=socket(AF_INET,SOCK_STREAM)
tcpCliSock.connect(ADDR)
data = raw_input('>')
if not data: break
tcpCliSock.send('%s\r\n'%data)
data = tcpCliSock.recv(BUFSIZ)
if not data: break
print data.strip()
tcpCliSock.close()
SocketServer模块的类 描述
BaseServer 包含服务器的核心功能与混合类的钩子功能
TCPServer/UDPServer 基本的网络同步TCP/UDP服务器
UnixStreamSerer/UnixDatagramServer 基于文件同步TCP/UDP服务器
ForkingMixIn/ThreadingMixin 实现了核心的进程化或线程化的功能
BaseRequestHandler 包含处理服务请求的核心功能。
例子:
使用SocketSerer模块实现上面的程序
import SocketServer
from time import ctime
HOST = ' '
PORT = 21234
class MyRequestHandler(SRH):
def handle(self):
print '...connected from:',self.client_address
self.wfile.write('[%s]%s'%(ctime(),self.rfile.readline()))
tcpServ = TCP((HOST,PORT),MyRequestHandler)
print 'waiting for connection...'
tcpServ.serve_forever()
使用SocketServer时间戳TCP客户端
from socket import *
HOST = 'localhost'
PORT = 21234
BUFSIZ = 1024
ADDR = (HOST,PORT)
while True:
tcpCliSock=socket(AF_INET,SOCK_STREAM)
tcpCliSock.connect(ADDR)
data = raw_input('>')
if not data: break
tcpCliSock.send('%s\r\n'%data)
data = tcpCliSock.recv(BUFSIZ)
if not data: break
print data.strip()
tcpCliSock.close()