Aplikasi
Starlette termasuk kelas aplikasi,Starlette, yang dengan rapi mengintegrasikan semua fungsi lainnya.
Starlette.application diimpor dari Starlette
Dari pemula. Tanggapan impor PlainTextResponse
Dari bintang. rute impor Rute, Gunung, WebSocketRoute
Dari starlette.staticfiles impor StaticFiles
Beranda pasti (permintaan):
Pengembalian PlainTextResponse ('Halo, dunia!')
Pengguna pasti _ saya (permintaan):
Nama pengguna = "John Doe"
Mengembalikan PlainTextResponse ('Halo,% s!'% nama pengguna)
Pengguna default (permintaan):
Nama pengguna = permintaan. path _ params ['nama pengguna']
Mengembalikan PlainTextResponse ('Halo,% s!'% nama pengguna)
Async def websocket _ endpoint (websocket):
Tunggu websocket.terima ()
Tunggu websocket. kirim _ teks ('Halo, websocket!')
Tunggu websocket.close ()
Def startup ():
Cetak ('Siap berangkat')
Rute = [
Rute ('/', beranda),
Rute ('/ user / me', user _ me),
Rute ('/ pengguna /{username}', pengguna),
WebSocketRoute ('/ ws', websocket _ endpoint),
Gunung ('/ statis', StaticFiles (direktori = "statis")),
]
Aplikasi = Starlette (debug = Benar, rute = rute, on _ startup = [startup])
aplikasi instansiasi
::: starlette.applications.Starlette :文档字符串
Menyimpan status pada contoh aplikasi
Anda dapat menggunakan atribut app.state generik untuk menyimpan status tambahan apa pun pada instance aplikasi.
Misalnya:
App.state.ADMIN _ EMAIL = 'admin@example.org'
Contoh aplikasi akses
Jika request tersedia (yaitu endpoint dan middleware), aplikasi ini tersedia di request.app.