diff options
Diffstat (limited to 'testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py')
-rw-r--r-- | testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py new file mode 100644 index 0000000000..de41d30dc0 --- /dev/null +++ b/testing/web-platform/tests/tools/third_party/websockets/example/quickstart/server_secure.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python + +import asyncio +import pathlib +import ssl +import websockets + +async def hello(websocket): + name = await websocket.recv() + print(f"<<< {name}") + + greeting = f"Hello {name}!" + + await websocket.send(greeting) + print(f">>> {greeting}") + +ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) +localhost_pem = pathlib.Path(__file__).with_name("localhost.pem") +ssl_context.load_cert_chain(localhost_pem) + +async def main(): + async with websockets.serve(hello, "localhost", 8765, ssl=ssl_context): + await asyncio.Future() # run forever + +if __name__ == "__main__": + asyncio.run(main()) |