Slide 33
Slide 33 text
そもそもASGI?
33
ASGIの最小ケース(httpの場合)
async def application(scope, receive, send):
assert scope['type'] == 'http'
await send({
'type': 'http.response.start',
'status': 200,
'headers': [
[b'content-type', b'text/plain'],
],
})
await send({
'type': 'http.response.body',
'body': b'Hello, world!',
})
呼び出し可能な非同期オブジェクト scope: 接続の詳細を含むdict
receive: クライアントからイベントを受信
send: クライアントへメッセージを送信