2

Pythonを使用して単純なエコーサーバーを実装しようとしています。これは、さまざまなインターネットソースから取得したコードです。

#!/usr/bin/python

import socket

host = "192.168.253.134"
port = 33333

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((host, port))
s.listen(5)
print "Server on {server}:{port} is running...".format(server=host, port=port)
sock, addr = s.accept()

while True:
    buffer = sock.recv(128)
    if buffer == 'exit':
        sock.send("bye")
        break
    elif buffer:
        sock.send(buffer)

sock.close()
print "Server is closed..." 

問題は、サーバーに接続してexitと入力すると、サーバーが接続を閉じずに自分のクエリをエコーバックすることです(( (バッファーが実際には「exit\n」であることに気付きましたが、「exit\n」のような組み合わせはありませんwork((( 問題はわかりません。このコードは機能しているようですが、私の ubuntu(((

4

1 に答える 1