socket编程TCP

TCP python socket

注意一定要先启动server,再启动client,否则client因为无法找到server而抛出异常

TCPServer.py

# coding=utf-8
from socket import *
serverPort = 12000
# AF_INET表示底层网络使用的是ipv4, SOCK_STREAM表示使用的socket类型是TCP
serverSocket = socket(AF_INET, SOCK_STREAM)
# 绑定服务器的端口号
serverSocket.bind(('', serverPort))
# 设置请求连接的最大数(>0)
serverSocket.listen(1)
print 'The Server is ready to recieve'

while 1:
    # 阻塞程序,等待TCP Client的connect,以完成三次握手
    connectionSocket, addr = serverSocket.accept()
    # 从Ciletn出接受字节流,最大为1024B
    sentence = connectionSocket.recv(1024)
    capitalizedSentence = sentence.upper()
    # 向Client发送字节流
    connectionSocket.send(capitalizedSentence)
    # 关闭连接
    connectionSocket.close()

TCPClient.py

# coding=utf-8
from socket import *
serverName = '127.0.0.1'
serverPort = 12000
# AF_INET表示底层网络使用的是ipv4, SOCK_STREAM表示使用的socket类型是TCP
clientSocket = socket(AF_INET, SOCK_STREAM)
# 三次握手,尝试建立TCP连接,如果失败会抛出异常
clientSocket.connect((serverName, serverPort))
sentence = raw_input('input lowercase sentence:')
# 发送出字节流给服务器
clientSocket.send(sentence)
# 从服务器接受信息,会阻塞程序,1024表示缓存的最大大小是1024B
modifiedSentence = clientSocket.recv(1024)
print 'From Server:', modifiedSentence
# 关闭套接字,发送最后一条TCP保文
clientSocket.close()

猜你喜欢

转载自blog.csdn.net/yinglang19941010/article/details/53290805