【问题标题】:Client/Server in PythonPython中的客户端/服务器
【发布时间】:2021-01-31 17:30:41
【问题描述】:

我尝试在 python 中实现服务器和客户端之间的通信。我需要在它们之间发送一条消息,双向,但我不知道如何使它成为一个连续的通信,因为在我的程序中,连接在服务器和客户端只发送一条消息后关闭。有人可以帮帮我吗?

这是我的服务器代码:

import socket

serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

serv.bind(('0.0.0.0', 8082))
serv.listen(5)

while True:
    conn, addr = serv.accept()
    from_client=''
    while True:
        from_client=''
        data = conn.recv(4096)
        if not data : break
        from_client+=data
        print from_client
    
        print("Send character to CLIENT ")
        input1=str(raw_input())
        conn.send(input1)
    
        print("You received from client the next Character")
        from_client=''
        data = conn.recv(4096)
        if not data : break
        from_client+=data
        print from_client
        print'\n'
   conn.close()
   print 'client disconenct'

这是我的客户代码:

import socket

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(('0.0.0.0', 8082))

client.send("I am CLIENT\n")
from_server = client.recv(4096)
print("I received from SERVER %s" %from_server)
print("Send your character to SERVER")
input1=str(raw_input())
client.send(input1)

client.close()

【问题讨论】:

    标签: python server tcp client


    【解决方案1】:

    您的连接已关闭,因为client.close()

    如果您的客户端的行为就像服务器一样重复请求您向服务器发送一些消息,然后接收服务器发送的内容,您可以创建一个 Ping-Pong 应用程序,其中一侧重复输入-发送-接收循环,而其他重复接收-输入-发送循环。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-22
      • 1970-01-01
      • 1970-01-01
      • 2017-11-23
      • 1970-01-01
      • 2012-04-17
      • 2013-06-10
      相关资源
      最近更新 更多