python实现tcp协议的服务端与客户端

2017-08-01  本文已影响45人  Oo晨晨oO

服务端(server)

python使用socket实现tcp协议的服务端,有以下几个步骤

  1. 创建socket
  2. 绑定端口
  3. 开启监听
  4. 接收信息(recv)
from socket import *
# 创建socket
serverSocket = socket(AF_INET, SOCK_STREAM)
# 绑定端口
serverSocket.bind(("", 8899))
# 开启监听
serverSocket.listen(5)
# 接收信息(得到新的socket和客户端的IP与端口号)
clientSocket, clientInfo = serverSocket.accept()
# 这里使用recv, 与UDP协议的recvfrom不同
recvData = clientSocket.recv(1024)

print("%s : %s"%(str(clientInfo), recvData))

clientSocket.close()
serverSocket.close()

客户端(client)

pyhton使用socket实现tcp协议的客户端,步骤如下:

  1. 创建socket
  2. 设置要发送的服务器的IP与端口
  3. 连接服务器(connect)
  4. 发送,接收数据(send, recv)
from socket import *

clientSocket = socket(AF_INET, SOCK_STREAM)

serverAdd = ("192.168.20.25", 7788)

clientSocket.connect(serverAdd)

clientSocket.send("哈哈哈".encode("gb2312"))

recvData = clientSocket.recv(1024)

print("%s"%(recvData.decode("gb2312")))

注意: tcp协议中, 只有一开始连接才需要写上目的服务器的ip和端口号, 连接成功之后直接使用send和recv来直接发送接收数据, 不需要再写ip与端口号了

上一篇下一篇

猜你喜欢

热点阅读