黑马程序员技术交流社区

标题: 服务器开发流程: [打印本页]

作者: IT-hanpeng    时间: 2019-6-21 14:07
标题: 服务器开发流程:
1、导入socket模块:import  socket
2、创建tcp服务端套接字对象:tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
3、设置端口号复用,通俗理解程序退出端口号立即释放:tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True) #【SOL_SOCKET表示当前套接字,SO_REUSEADDR表示复用选项,是否复用,True表示复用】
4、绑定服务器端的端口号:tcp_server_socket.bind(("", 9090))  #一般此处的服务器ip地址不传入值,"": 表示本机的任何一个ip都可以  ***此处是服务器ip地址,元组类型传值
5、设置监听:tcp_server_socket.listen(128)  #128: 表示最大等待的连接个数
6、等待接受客户的连接请求:new_socket, ip_port = tcp_server_socket.accept()  # accept() 会返回一个新的套接字和客户端进行数据传输 和 返回元组类型的客户端ip地址和端口号(客户端ip,端口号)
7、接受客户端发送的数据:recv_data = new_socket.recv(1024)   #如有打印需要一定要解码:recv_data.decode("gbk")
8、发送给客户端的数据:new_socket.send(data)   #data="发送内容".encode("utf-8"),
9、关闭和客户端通信的socket:new_socket.close()
10、服务端的套接字关闭,不再提供连接服务:tcp_server_socket.close()






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2