2023-01-03 21:05:49 +00:00
|
|
|
from socketify import App
|
2022-10-24 17:15:46 +00:00
|
|
|
|
2023-01-03 21:05:49 +00:00
|
|
|
app = App()
|
2022-10-24 17:15:46 +00:00
|
|
|
|
2023-01-03 21:05:49 +00:00
|
|
|
def extension(request, response, ws):
|
2022-11-08 10:17:51 +00:00
|
|
|
|
2023-01-03 21:05:49 +00:00
|
|
|
@request.method
|
|
|
|
async def get_user(self):
|
|
|
|
token = self.get_header("token")
|
|
|
|
self.token = token
|
|
|
|
return { "name": "Test" } if token else { "name", "Anonymous" }
|
2022-11-07 14:06:13 +00:00
|
|
|
|
2023-01-03 21:05:49 +00:00
|
|
|
@request.method
|
|
|
|
async def get_cart(self):
|
|
|
|
return [{ "quantity": 10, "name": "T-Shirt" }]
|
2022-11-01 12:30:46 +00:00
|
|
|
|
2023-01-06 19:11:19 +00:00
|
|
|
@response.method
|
|
|
|
def send(self, content: any, content_type: str = b'text/plain', status=200):
|
|
|
|
self.write_header(b'Content-Type', content_type)
|
|
|
|
self.write_status(status)
|
|
|
|
self.end(content)
|
2022-11-07 14:06:13 +00:00
|
|
|
|
2023-01-06 19:11:19 +00:00
|
|
|
request.property("token", "testing")
|
|
|
|
|
|
|
|
# extensions must be registered before routes
|
2023-01-03 21:05:49 +00:00
|
|
|
app.register(extension)
|
2022-11-16 19:28:46 +00:00
|
|
|
|
2023-01-06 19:11:19 +00:00
|
|
|
async def home(res, req):
|
|
|
|
print("token", req.token)
|
|
|
|
cart = await req.get_cart()
|
|
|
|
print("cart", cart)
|
|
|
|
user = await req.get_user()
|
|
|
|
print("user", user)
|
|
|
|
print("token", req.token)
|
|
|
|
res.send("Hello World!")
|
|
|
|
|
|
|
|
app.get("/", home)
|
2023-01-03 21:05:49 +00:00
|
|
|
app.listen(
|
|
|
|
3000,
|
|
|
|
lambda config: print("Listening on port http://localhost:%d now\n" % config.port),
|
|
|
|
)
|
|
|
|
app.run()
|
2023-01-06 19:11:19 +00:00
|
|
|
|
2023-01-06 19:48:25 +00:00
|
|
|
|
2023-01-06 19:11:19 +00:00
|
|
|
# uws_websocket_drain_handler
|
|
|
|
# uws_websocket_subscription_handler
|
|
|
|
# uws_websocket_open_handler
|
|
|
|
# uws_websocket_message_handler
|
|
|
|
# uws_websocket_pong_handler
|
|
|
|
# uws_websocket_ping_handler
|
2023-01-06 19:48:25 +00:00
|
|
|
# uws_websocket_close_handler
|