python3高级,TCP客户端构建流程(发送消息)
程序员文章站
2022-05-10 23:25:32
...
咱们还是需要用到这个 https://download.csdn.net/download/s1433972007lj/10651878 python3 网络连接调试助手,在第一次上传的时候,还以为可以设置免费下载呢,我看了看好像不行. 所以看官们就只能积分下载了,抱歉.
进入正题,这次教大家如何用 TCP 的传输方式实现一个发送消息的客户端.
废话不多说直接呈现代码.
'''
TCP是,面对连接,需要先建立连接,然后传输数据,最后再断开连接.
TCP的优点:
1.TCP是一种面向连接,需要先建立连接才可以传输数据.
2.可靠传输:
1).发送应答机制:TCP发送的每个报文段,都必须得到接收方的应答才认为这个TCP的报文段发
送成功
2).错误效验:TCP会使用一种效验函数来检查传输的数据是否错误,传输和和接收的时候都会进
行检查
3).超时重发:发送端发送一个报文段就会进入计时,如果再一定时间内没有收到应答就会重发这
个报文段
4).阻塞管理:流量控制,用来防止因为对方发送消息过快,而导致消息接收不完全.
'''
# 1.导入socket模块
import socket
# 2.使用socket模块,调用socket方法,创建套接字
tcp_client_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 3.建立和TCP服务器的连接
# 使用connect()方法来建立和服务器的连接
# windows IP 端口号
tcp_client_socket.connect(("xxx.xxx.xxx.xxx",8080))
# 4.调用send方法,发送消息
tcp_client_socket.send("你好,我叫宇宙无敌天下第一帅".encode())
# 5.接收TCP服务器返回的消息
# TCP使用recv()返回参数,返回的只有二进制的内容,没有IP地址和端口,这一点和UDP的recvfrom()不一样
udp_data = tcp_client_socket.recv(1024)
# 网络调试助手发送消息是默认gbk方式,所以咱们解包操作 gbk
print("收到新的消息 : ",udp_data.decode("gbk"))
# 6.关闭套接字,释放电脑空间
tcp_client_socket.close()
代码编写完成后,就要运行测试一下咯.
下一步继续进行服务器返回消息测试.
到这里,这个程序就算是写完了,有需要注意的地方:
我这个是虚拟机Linux系统给windows系统发送消息. 两台计算机的IP地址,你们在写的时候一定要搞清楚,而且虚拟机内的Linux 网络要设置桥接模式.如果有消息无法接收发送的情况,请多看看IP地址和端口. 一般情况下,代码错误的情况较少.
上一篇: 对密文密码进行**的一种方法
下一篇: 针对匿名用户ftp服务的一些设定