在此分配的第一部分中,您将实现一个回显服务器,该服务器从客户端接收文本消息并将其发送回客户端。 (这就是我们称之为回显服务器的原因)当服务器从客户端收到短信时,它将大写字母的奇数字符。例如,当客户端发送一条短信“ hello elec 4120 student”时,服务器应返回一条短信“ Helio Elec 4120 StUdEnT”。
在讲师的提示下,我的服务器代码如下
from socket import *
serverPort = 12000
#create TCP welcoming socket
serverSocket = socket(AF_INET,SOCK_STREAM)
serverSocket.bind(('',serverPort))
#server begins listening for incoming TCP requests
serverSocket.listen(1)
print('The server is ready to receive')
while True:
#server waits on accept()
#for incoming requests, new socket created on return
connectionSocket, addr = serverSocket.accept()
#read bytes from socket (but not address as in UDP)
sentence = connectionSocket.recv(1024).decode()
capitalizedSentence = sentence.upper()
#close connection to this client (but not welcoming socket)
connectionSocket.send(capitalizedSentence.encode())
connectionSocket.close()
而客户端代码是
from socket import *
serverPort = 12000
serverName = 'localhost'
#create TCP socket for server, remote port 12000
clientSocket = socket(AF_INET, SOCK_STREAM)
clientSocket.connect((serverName,serverPort))
sentence = raw_input('Input lowercase sentence:')
#No need to attach server name, port
clientSocket.send(sentence.encode())
modifiedSentence = clientSocket.recv(1024)
print ('From Server:', modifiedSentence.decode())
clientSocket.close()
以及我运行服务器代码
'The server is ready to receive'
显示了,但是当我运行客户端时,
line 6, in <module>
clientSocket.connect((serverName,serverPort))
ConnectionRefusedError: [Errno 61] Connection refused
显示