代码改变世界

Python 网络编程(二)

2012-10-12 10:03  AlexDotNet  阅读(206)  评论(0编辑  收藏  举报
from socket import *

HOST='localhost'
PORT=8080
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()

客户端

服务端

from SocketServer import(TCPServer as TCP,StreamRequestHandler as SRH)
from time import ctime

HOST=''
PORT=8080
ADDR=(HOST,PORT)

class MyRequestHandler(SRH):
     def handle(self):
          print '..connected from:',self.client_address
          self.wfile.write('[%s] %s' %(ctime(),self.rfile.readline()))

tcpServ=TCP(ADDR,MyRequestHandler)
print 'waiting for connecting.....'
tcpServ.serve_forever()

在服务端 通过对RequestHandler 中的handle 进行重写当有数据发送过来的时候进行连接服务创建套接字

有点类似UDP/IP的效果!