Sanic adalah server web dan kerangka web Python 3.8+ yang ditulis untuk bekerja dengan cepat. Ini memungkinkan penggunaan sintaks async/await
yang ditambahkan di Python 3.5, yang membuat kode Anda tidak memblokir dan cepat.
Sanic juga mematuhi ASGI, sehingga Anda dapat menerapkannya dengan server web ASGI alternatif.
Kode sumber di GitHub | Bantuan dan papan diskusi | Panduan Pengguna | Mengobrol di Perselisihan
Proyek ini dikelola oleh komunitas, untuk komunitas. Kontribusi dipersilakan!
Tujuan dari proyek ini adalah untuk menyediakan cara sederhana untuk membangun dan menjalankan server HTTP berperforma tinggi yang mudah untuk dibangun, diperluas, dan pada akhirnya dapat ditingkatkan skalanya.
Lihat kolektif terbuka untuk mempelajari lebih lanjut tentang membantu mendanai Sanic.
pip3 install sanic
Sanic memanfaatkan
uvloop
danujson
untuk membantu performa. Jika Anda tidak ingin menggunakan paket tersebut, cukup tambahkan variabel lingkunganSANIC_NO_UVLOOP=true
atauSANIC_NO_UJSON=true
pada waktu instalasi.$ ekspor SANIC_NO_UVLOOP=benar $ ekspor SANIC_NO_UJSON=benar $ pip3 install --no-biner :semua: sanic
Catatan
Jika Anda menjalankan instalasi bersih Fedora 28 atau lebih tinggi, pastikan Anda telah menginstal paket redhat-rpm-config
jika Anda ingin menggunakan sanic
dengan ketergantungan ujson
.
dari sanic import Sanicfrom sanic.response import jsonapp = Sanic("my-hello-world-app")@app.route('/')async def test(request):return json({'hello': 'world'} )if __name__ == '__main__':app.run()
Sanic sekarang dapat dijalankan dengan mudah menggunakan sanic hello.app
.
[30-12-2018 11:37:41 +0200] [13564] [INFO] Cepat @ http://127.0.0.1:8000 [30-12-2018 11:37:41 +0200] [13564] [INFO] Pekerja pemula [13564]
Dan, kami dapat memverifikasi bahwa ini berfungsi: curl localhost:8000 -i
HTTP/1.1 200 Oke Koneksi: tetap hidup Tetap Hidup: 5 Panjang Konten: 17 Tipe Konten: application/json {"halo":"dunia"}
Sekarang, ayo buat sesuatu dengan cepat!
Versi Python minimum adalah 3.8. Jika Anda memerlukan dukungan Python 3.7, silakan gunakan v22.12LTS.
Panduan Pengguna, Changelog, dan Dokumentasi API dapat ditemukan di sanic.dev.
Ajukan pertanyaan atau bergabunglah dalam percakapan.
Kami selalu senang mendapat kontribusi baru. Kami telah menandai isu-isu yang baik bagi siapa pun yang ingin memulai, dan menerima pertanyaan di forum. Silakan lihat pedoman Kontribusi kami.