好的,我的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))