服务端:
# _*_ coding:utf-8 _*_
#创建TCP服务器程序,把客户端发过来的字符串加上时间戳 格式:【时间】数据
from socket import *
from time import ctime
HOST = '' #为空,表示可以绑定所有有效的地址
PORT = 21567 # 随机生成未被占用的端口号
BUFSIZ = 1024 # 设定缓冲大小为1K
ADDR = (HOST,PORT)
tcpSerSock = socket(AF_INET,SOCK_STREAM) #创建服务端socket
tcpSerSock.bind(ADDR) #把地址绑定到socket
tcpSerSock.listen(3) #监听连接,最多允许3个连接
# 服务器无线循环
while True:
print "waiting for connection..."
tcpCliSock,addr = tcpSerSock.accept() #接受客户连接 ,单线程
print "...connected from : ",addr
# 通讯循环
while True:
data = tcpCliSock.recv(BUFSIZ) #接受客服端发送的数据
if not data:
break
tcpCliSock.send('[%s]%s'%(ctime(),data)) #发送接受的数据,【时间】数据
tcpCliSock.close()
tcpSerSock.close()
客户端:
# _*_ coding:utf-8 _*_
#客户端
from socket import *
HOST = 'localhost'
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST,PORT)
tcpCliSock = socket(AF_INET,SOCK_STREAM) #创建客户端socket
tcpCliSock.connect(ADDR) #连接服务器
#通讯循环
while True:
data = raw_input(">>> ")
if not data:
break
tcpCliSock.send(data) #发送数据到服务端
data = tcpCliSock.recv(BUFSIZ) #接受服务端处理后数据
if not data:
break
print data
tcpCliSock.close()