好的,我的Python SSL服务器/客户端就可以接收数据(如下面的在线示例所示) . 我有两个问题,如果有任何可以启发我 .
-
我想在另一个函数中使用服务器端的“data”var在查询或某种子字符串效果中使用此var . 将此函数发送到另一个函数然后将其返回到echo_client()的最佳方法是什么?
-
将数据发送回客户端的最佳方法作为响应字符串ect?
从套接字导入导入套接字AF_INET,SOCK_STREAM,SO_REUSEADDR,SOL_SOCKET,SHUT_RDWR导入ssl global_card_data = [] KEYFILE ='localhost.key'CERTFILE ='localhost.cert'
def echo_client(s):while:data = s.recv(8192)print(data.decode(“utf-8”))
if data == b'':
break
s.send(b'This is a response.')
print('Connection closed')
s.close()
def echo_server(address):s = socket.socket(AF_INET,SOCK_STREAM)s.bind(address)s.listen(1)s.setsockopt(SOL_SOCKET,SO_REUSEADDR,1)
s_ssl = ssl.wrap_socket(s, keyfile=KEYFILE, certfile=CERTFILE, server_side=True)
while True:
try:
(c,a) = s_ssl.accept()
print('Got connection', c, a)
echo_client(c)
except socket.error as e:
print('Error: {0}'.format(e))
echo_server((socket.gethostbyname('localhost'),8082))