开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第23天,点击查看活动详情 今天我们这篇文章聊一聊网络的一些知识,我们都知道现在的网络通信都是使用tcp网络传输协议,它的可靠传输为网络通信提供了良好的保证,而socket套接字就是进程之间进行通信的工具,它就像生活中的插座一样,负责为各种进程进行数据的传输。那么我们面向tcp如何进行编程呢?
客户端
我们知道,网络通信需要一个客户端,一个服务端,客户端发送请求给服务端,服务端接收请求进行处理。我们这篇文章就讲讲Python如何进行对tcp客户端进行开发的。
import socket
if __name__ == '__main__':
tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcp_client_socket.bind(("", 8900))
tcp_client_socket.connect(("192.168.1.101", 9090))
send_content = "你好,我是ikun"
send_data = send_content.encode("utf-8")
tcp_client_socket.send(send_data)
recv_data = tcp_client_socket.recv(1024)
recv_content = recv_data.decode("utf-8")
print("接收到的服务端的数据:", recv_content)
tcp_client_socket.close()
步骤详解
第一步:我们先引入socket模块
第二步创建tcp客户端的套接字,这里创建的时候用到了两个参数,一个是AF_INET,它表示的是ipv4地址类型,一个是SOCK_STREAM,它表示的是tcp传输协议类型
第三步就是客户端套接字的端口号的绑定
第四步与服务端建立连接,我们需要知道服务端的ip地址和端口号
第五步就是发送数据了,我们首先对字符串进行编码,然后通过客户端套接字来发送出去,我们不仅可以发送数据,还能接收到服务端的数据,发送数据前需要编码,收到数据后需要解码,然后转为字符串输出
第六步就是关闭套接字。
至此整个流程结束
小结
这篇文章我们讲了网络通信需要客户端和服务端,其中对客户端的开发全过程进行了讲解,掌握了客户端的开发流程,以后进行网络编程的时候就不难了。