当前位置:   article > 正文

TCP客户端服务器(Python)_python tcp rev

python tcp rev

TCP客户端程序:

  1. import socket
  2. def main():
  3. # 创建tcp
  4. tcp_client_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
  5. # 链接套接字
  6. # sever_ip=input("输入对方ip:")
  7. # sever_port=int(input("输入对方端口:"))
  8. # sever_addr=(sever_ip,sever_port)
  9. tcp_client_socket.connect(sever_addr)
  10. while True:
  11. # 数据发送
  12. tcp_data=input("输入发送的内容:")
  13. tcp_client_socket.send(tcp_data.encode("utf-8"))
  14. # 服务器返回数据
  15. rev_data=tcp_client_socket.recv(1024)
  16. print("服务器返回的消息:",rev_data)
  17. # 关闭套接字
  18. tcp_client_socket.close()
  19. if __name__ == '__main__':
  20. main()

TCP服务器程序:

当TCP客户端实现与服务器连接时,服务器给客户端创建一个新的服务套接字,类似10010客服,当你打通10010服务时,系统会随机给你分配一个客服与你交流。

  1. import socket
  2. def main():
  3. # 创建套接字
  4. tcp_sever_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
  5. # 绑定本地信息
  6. tcp_sever_socket.bind(('',7890))
  7. # 让默认是套接字主动变为被动(listen)三次握手在这里完成
  8. tcp_sever_socket.listen(128)
  9. while True:
  10. # 等待客户端的链接
  11. print("等待新的客户端到来")
  12. new_client_socket,client_addr=tcp_sever_socket.accept() # 服务套接字
  13. print("客户端已经到来:%s"%str(client_addr))
  14. while True:
  15. # 接受客户端发过来的请求
  16. recv_data=new_client_socket.recv(1024)
  17. print("客户端发来的请求:%s"%recv_data)
  18. # 如果recv解阻塞,有两种方式
  19. # 1.客户端发来数据
  20. # 2.客户端close导致了recv解阻塞
  21. if recv_data:
  22. #回送一部分数据给客户端
  23. new_client_socket.send('hahhah'.encode("utf-8"))
  24. else:
  25. break
  26. # 关闭套接字
  27. new_client_socket.close()
  28. print("已经为这个客户端服务完毕")
  29. tcp_sever_socket.close()
  30. if __name__ == '__main__':
  31. main()

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/1013387
推荐阅读
相关标签
  

闽ICP备14008679号